kivy_android_service
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| kivy_android_service [2020/11/02 09:09] – [main.py] serge | kivy_android_service [2020/11/02 12:53] (Version actuelle) – [Kivy: Android Service] serge | ||
|---|---|---|---|
| Ligne 2: | Ligne 2: | ||
| <WRAP center round box 60% centeralign> | <WRAP center round box 60% centeralign> | ||
| **{{tagpage> | **{{tagpage> | ||
| - | **[[http:// | + | **[[http:// |
| </ | </ | ||
| <WRAP center round box 40% centeralign> | <WRAP center round box 40% centeralign> | ||
| Ligne 31: | Ligne 31: | ||
| </ | </ | ||
| - | =====Extrait du code===== | + | =====Kivy Accelerometer Service OSC===== |
| - | ====buildozer.spec==== | + | |
| + | ====Sources sur GitHub==== | ||
| + | * **[[https:// | ||
| + | ===*.apk=== | ||
| + | Dans le dossier bin | ||
| + | |||
| + | ===TODO=== | ||
| + | Si il n'y a pas d' | ||
| + | |||
| + | ====Extrait du code pour le service==== | ||
| + | La communication entre main.py et service.py se fait en OSC, c'est très rapide, il n'y a aucune latence. | ||
| + | Il n'est pas possible de lancer service.py avec des arguments, ni d' | ||
| + | |||
| + | Pour l'OSC, voir [[kivy_oscpy|Kivy: | ||
| + | |||
| + | === buildozer.spec === | ||
| + | [[https:// | ||
| <code python> | <code python> | ||
| Ligne 46: | Ligne 62: | ||
| </ | </ | ||
| - | ====main.py==== | + | ===main.py=== |
| + | [[https:// | ||
| <code python> | <code python> | ||
| from jnius import autoclass | from jnius import autoclass | ||
| Ligne 95: | Ligne 113: | ||
| </ | </ | ||
| | | ||
| - | ====service.py==== | + | ===service.py=== |
| + | [[https:// | ||
| <code python> | <code python> | ||
| + | class AccelerometerService: | ||
| - | </ | + | def __init__(self): |
| - | <code python> | + | ... |
| + | self.init_osc() | ||
| + | self.sensor_init() | ||
| + | |||
| + | ... | ||
| + | |||
| + | def init_osc(self): | ||
| + | """ | ||
| + | de la même machine, donc il faut un client. | ||
| + | """ | ||
| + | self.server = OSCThreadServer() | ||
| + | self.server.listen(' | ||
| + | # Les callbacks du serveur | ||
| + | self.server.bind(b'/ | ||
| + | self.server.bind(b'/ | ||
| + | self.server.bind(b'/ | ||
| + | # Un simple client | ||
| + | self.client = OSCClient(b' | ||
| + | |||
| + | ... | ||
| + | |||
| + | def run(self): | ||
| + | while self.loop: | ||
| + | self.get_acceleration() | ||
| + | sleep(0.02) | ||
| - | </ | ||
| - | <code python> | + | if __name__ == ' |
| + | ACCELEROMETER = AccelerometerService() | ||
| + | ACCELEROMETER.run() | ||
| </ | </ | ||
| - | =====Kivy Accelerometer Service OSC===== | ||
| - | ====Sources sur GitHub==== | ||
| - | * **[[https:// | ||
| - | ===*.apk=== | ||
| - | Dans le dossier bin | ||
| - | ===TODO=== | ||
| - | Si il n'y a pas d' | ||
| =====Un projet plus complet===== | =====Un projet plus complet===== | ||
kivy_android_service.1604308153.txt.gz · Dernière modification : de serge
