Crossbow Admob Plugin
About
This project is a Crossbow Plugin that allows showing AdMob ads from Rust. Without worrying about the building, just download and use.
Features
| Ad Format | Available |
|---|---|
| Banner | ❌ |
| Interstitial | ✅ |
| Rewarded | ✅ |
| Rewarded Interstitial | ✅ |
| Native | ❗ |
✅ = Works and tested — 🆗 = Works but may contain bugs — 🛠 = Under development — 📝 = Planned - ❌ = Not working - ❗ = Not planned to be implemented
Installation
Just add Rust dependencies like this:
[]
= "0.1.7"
= "0.1.7"
And finally, add this to your Crossbow Android configuration:
[]
= ["com.crossbow.admob:admob:0.1.7"]
That's it, now you can start using AdMob ads!
If you want to configure custom APPLICATION_ID add this to your Cargo.toml file:
[[]]
= "com.google.android.gms.ads.APPLICATION_ID"
= "<YOUR ID HERE>"
# By default: ca-app-pub-3940256099942544~3347511713
Usage
In your rust project, you will need to get JNIEnv first and retrieve the JNI Singleton instance of AdMob from Crossbow. To do this, write following code:
use ;
let = create_java_vm.unwrap;
let jnienv = vm.attach_current_thread_as_daemon.unwrap;
let admob_singleton = get_jni_singleton.expect;
let admob = from_jnienv.unwrap;
To show Interstitial Ad, use following code:
admob.initialize.unwrap;
admob.load_interstitial.unwrap;
admob.show_interstitial.unwrap;
To read signals:
if let Ok = admob_singleton.get_receiver.recv.await
Complete documentation you can find here.
Thanks and inspiration
This Plugin was initially inspired by godot-admob-android.