Android API Testing
Library to test the AOSP Hardware APIs
Currently Available APIs
-
Bluetooth ᛒ
ABLE TO DO
- Connect , Disconnect
- Pair , UnPair
- Enable, Disable Service Provider
- look for more..
-
Sensor (Device Supported Sensor's)
-
Text To Speech
-
Android Runtime Permission's Based on Android API Version
-
Media Control's
-
Record Audio ⏺️
-
Wifi 👎
-
Battery 🔋
-
Make Call (or) Dial Intent 📲
-
Brightness 🔆
-
Gps ➤
-
Android Toast 🔔
-
Device Sensor Information 📡
-
Vibrator 📳
-
Share 🔗
-
Email 📧
-
Camera 📷
Android Support 📱
- Android Background Service (Broadcast Receiver)
NOTE 💡
- Using the Android Background Service API you can able to receive the Android Internal Event Message's
- Aeroplane mode change's 🛩️
- Headset adaptor state change's 🎧
- Incoming Phone Call 📲
- more...
Installation
pip install android-prober
Usage
- Create
main.pylike the contents below.
from kivy.app import App
from kivy.lang import Builder
from android_prober import AndroidProber
from requests import get
KV = '''
BoxLayout:
orientation: 'vertical'
BoxLayout:
size_hint_y: None
height: '30sp'
Button:
text: 'telephony_permission'
on_press: app.telephony_permission()
Button:
text: 'bluetoothPermission'
on_press: app.bluetooth_permission()
Button:
text: 'locationPermission'
on_press: app.location_permission()
ScrollView:
Label:
id: label
size_hint_y: None
height: self.texture_size[1]
text_size: self.size[0], None
'''
class BluetoothTestViaWebService(App):
BASE_URL = "http://localhost:5000"
def init(self):
""" while using webservice to invoke the API's """
TesterApp.use_flaskapp()
def on_pause(self):
return True
def telephony_permission(self):
response = get(f"{BASE_URL}/telephony_permission")
print(response.json)
def location_permission(self):
response = get(f"{BASE_URL}/location_permission")
print(response.json)
def bluetooth_permission(self):
response = get(f"{BASE_URL}/bluetooth_permission")
print(response.json)
def build(self):
self.init()
self.root = Builder.load_string(KV)
return self.root
if __name__ == '__main__':
BluetoothTestViaWebService().run()
- Create
main.pywithout webservice.
from kivy.app import App
from kivy.lang import Builder
from android_prober import AndroidProber
from android_prober import bluetooth
KV = '''
BoxLayout:
orientation: 'vertical'
BoxLayout:
size_hint_y: None
height: '30sp'
Button:
text: 'telephony_permission'
on_press: app.telephony_permission()
Button:
text: 'bluetoothPermission'
on_press: app.bluetooth_permission()
Button:
text: 'locationPermission'
on_press: app.location_permission()
ScrollView:
Label:
id: label
size_hint_y: None
height: self.texture_size[1]
text_size: self.size[0], None
'''
class BluetoothTest(App):
def on_pause(self):
return True
def bluetooth_permission(self):
response = bluetooth.bluetooth_permission()
print(response)
def build(self):
self.root = Builder.load_string(KV)
return self.root
if __name__ == '__main__':
BluetoothTest().run()
Build & Run
pip install -r requirements.txt
buildozer android debug
Install the generated apk into the target device.
Documentation
-
python for android webview recipe internally start and serve's web service running on port 5000.
-
You can also test api on Single Click.
-
Connect the device using ADB.
-
If your using adb via cable, Run this to expose the port
tcp/5000
adb forward tcp:5000 tcp:5000
Upcomming updates
-> https://github.com/gunaNeelamegam/android-prober/issues
- Stablity
- API for All Other Interface's
- FastAPI Intergration
Metadata
Release files for android-prober 0.1.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| android_prober-0.1.7.tar.gz | 28.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| android_prober-0.1.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 73.0 kB
Release files / android_prober-0.1.7.tar.gz
| Download URL | android_prober-0.1.7.tar.gz |
|---|---|
| Size | 28.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
78c233fb970dba1aac6c5dc45935ad767b7dc78921af876e0e27bf30e1cf2568
|
|
BLAKE2b-256 checksum How to use checksums |
025c9521e26f90185353c16974f0d6d043931f885718c19f8a524051cf711624
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.19
|
Release files / android_prober-0.1.7-py3-none-any.whl
| Download URL | android_prober-0.1.7-py3-none-any.whl |
|---|---|
| Size | 44.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c5ba679f3c54be24023b526534df331859ca0a37c570cce06e317db691beecbc
|
|
BLAKE2b-256 checksum How to use checksums |
b4b0375ed4a7f717ff70685e72e01bd6a4f5756c626d52cee4102bc775dd1737
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.19
|