4 releases

0.2.3 Sep 12, 2022
0.2.2 Aug 30, 2022
0.2.1 Aug 25, 2022
0.2.0 Aug 16, 2022

#1508 in Game dev


2.5K SLoC

Rust 1.5K SLoC // 0.0% comments Kotlin 861 SLoC // 0.3% comments

Crossbow Admob Plugin

Crate Info Documentation MIT/Apache 2.0 GitHub Stars


This project is a Crossbow Plugin for Google Play Billing written in Rust and Kotlin.


Important: Before using this plugin please follow instructions on Getting ready Google Play Billing official guide.

Just add Rust dependencies like this:

crossbow = "0.2.3"
[target.'cfg(target_os = "android")'.dependencies]
play-billing = "0.2.3"

And finally, add this to your Crossbow Android configuration:

plugins_remote = ["com.crossbow.play_billing:play_billing:0.2.3"]

That's it, now you can start using Play Billing!


First step is plugin initialization. In your rust project, you will need to initialize Crossbow instance and then get Android plugin:

#![cfg(target_os = "android")]

use crossbow::android::*;
let crossbow = CrossbowInstance::new();
let play_billing: play_billing::PlayBillingPlugin = crossbow.get_plugin()?;

After plugin initialization you can use supported features. For example to start connection and query purchases you can use:


To read signals:

if let Ok(signal) = play_billing.get_receiver().recv().await {
    println!("Signal: {:?}", signal);

Complete documentation you can find here.

Thanks and inspiration

This Plugin was initially inspired by godot-google-play-billing.


~20K SLoC