Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/michaelstott/kivmob

AdMob support for Kivy
https://github.com/michaelstott/kivmob

admob admob-support android android-admob banner banner-ads buildozer google-admob interstitial-ads kivy monetization open-source python rewarded-video-ads tutorial

Last synced: 1 day ago
JSON representation

AdMob support for Kivy

Awesome Lists containing this project

README

        




AdMob support for Kivy



Build Status
pypi
Python Version
Code Climate
Code Climate
Code style: black
docs

Allows developers to monetize their [Kivy] mobile applications using [Google AdMob].

- No need to change internal Android project manifest templates or Java code.
- Supports banner, interstitial, and rewarded video ads.

For more information, please read the official [documentation].

### Installation

You can install KivMob with the following command.
```sh
$ pip3 install https://github.com/MichaelStott/KivMob/archive/refs/heads/master.zip
```

### Demo Screenshot



### Quickstart

Create a new folder containing main.py and buildozer.spec.

```sh
$ mkdir kivmob-quickstart
$ cd kivmob-quickstart
$ touch main.py
$ buildozer init
```

Copy the following into main.py.
```python
from kivmob import KivMob, TestIds
from kivy.app import App
from kivy.uix.button import Button

class KivMobTest(App):

def build(self):
self.ads = KivMob(TestIds.APP)
self.ads.new_interstitial(TestIds.INTERSTITIAL)
self.ads.request_interstitial()
return Button(text='Show Interstitial',
on_release=lambda a:self.ads.show_interstitial())

def on_resume(self):
self.ads.request_interstitial()

KivMobTest().run()
```

Make the following modifications to your buildozer.spec file.

```
requirements = python3, kivy, android, jnius, https://github.com/MichaelStott/KivMob/archive/refs/heads/master.zip
...
android.permissions = INTERNET, ACCESS_NETWORK_STATE
android.api = 33
android.minapi = 21
android.sdk = 33
android.ndk = 25b
android.gradle_dependencies = com.google.firebase:firebase-ads:21.4.0
android.enable_androidx = True
p4a.branch = master
android.meta_data = com.google.android.gms.ads.APPLICATION_ID=ca-app-pub-3940256099942544~3347511713
```

Finally, build and launch the application.

```sh
$ buildozer android debug deploy run
```

### App Showcase

_Please open a pull request or project issue if you would like your KivMob app featured in this README._

| App | Play Store Link | Developer |
| ------ | ------ | ------ |
| Gloworld : The Marbles game | https://play.google.com/store/apps/details?id=com.worldglowfree.dom.com.world.glowfree&hl=en | [thegameguy] |
| MIUI Hidden Settings | https://play.google.com/store/apps/details?id=com.ceyhan.sets | [Yunus Ceyhan] |
| PyTool USB Serial Free | https://play.google.com/store/apps/details?id=com.quanlin.pytoolusbserialfree | [Quan Lin] |
| Easy Weather - Live Weather with 5 day forecast | https://play.google.com/store/apps/details?id=org.sivaram.easyweather | [Sivaram Yadav Nalliboyana]
| La Carta | https://play.google.com/store/apps/details?id=com.blogspot.roberware.lacarta | [RoberWare]

### Other

KivMob is an open source project not associated with AdMob. Please abide by their policies when designing and testing your application.

[Google AdMob]:
[Kivy]:
[Buildozer]:
[documentation]:

[Quan Lin]:
[thegameguy]:
[Yunus Ceyhan]:
[Sivaram Yadav Nalliboyana]:
[RoberWare]: