All Projects → tshirtman → kivy_service_osc

tshirtman / kivy_service_osc

Licence: MIT license
simple UI/Service communication using osc on python-for-android

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to kivy service osc

ngx-malihu-scrollbar
Angular 2+ scrollbar customization using Malihu jQuery Custom Scrollbar plugin
Stars: ✭ 59 (+11.32%)
Mutual labels:  service
ngx-localstorage
An Angular wrapper for localstorage/sessionstorage access.
Stars: ✭ 27 (-49.06%)
Mutual labels:  service
dklb
Expose Kubernetes services and ingresses through EdgeLB.
Stars: ✭ 13 (-75.47%)
Mutual labels:  service
super-mario-message
Display custom messages in a Super Mario Bros environment
Stars: ✭ 18 (-66.04%)
Mutual labels:  service
My Android Garage
A quick reference guide for Android development.
Stars: ✭ 66 (+24.53%)
Mutual labels:  service
KV4Jetbrains
Syntax highlighting and auto-completion for Kivy/KivyMD .kv files in PyCharm/Intellij IDEA
Stars: ✭ 93 (+75.47%)
Mutual labels:  kivy
ofxOscMidi
Midi in, OSC out with Midi thru. Based on openFrameworks
Stars: ✭ 66 (+24.53%)
Mutual labels:  osc
IQService
iOS端模块间通信解决方案。
Stars: ✭ 17 (-67.92%)
Mutual labels:  service
webApi-angularjs
⚓ Definitely simplifies your work with server side & organizes webApi layout to further managing.
Stars: ✭ 15 (-71.7%)
Mutual labels:  service
telenium
Automation for Kivy Application
Stars: ✭ 56 (+5.66%)
Mutual labels:  kivy
OSCShark
OSC Shark is a tool for monitoring and analysing OSC (Open Sound Control) packets.
Stars: ✭ 24 (-54.72%)
Mutual labels:  osc
mqtt-android-tutorial
A tutorial for using the MQTT Android Service.
Stars: ✭ 37 (-30.19%)
Mutual labels:  service
SwingOSC
An OpenSoundControl (OSC) server to dynamically instantiate and control Java objects. Its main application is a GUI library for SuperCollider.
Stars: ✭ 22 (-58.49%)
Mutual labels:  osc
InitKit
Neo-InitWare is a modular, cross-platform reimplementation of the systemd init system. It is experimental.
Stars: ✭ 364 (+586.79%)
Mutual labels:  service
HandPose-OSC
Handtracking using MediaPipe HandPose. Runs as an Electron app and outputs OSC
Stars: ✭ 24 (-54.72%)
Mutual labels:  osc
lion
A simple, modular Discord bot from scratch
Stars: ✭ 15 (-71.7%)
Mutual labels:  service
kivy-cupertino
iOS-style widgets for Kivy
Stars: ✭ 59 (+11.32%)
Mutual labels:  kivy
rpc
RPC-like client-service implementation over messaging queue
Stars: ✭ 26 (-50.94%)
Mutual labels:  service
gogen
Command-line tool to generate GO applications and libraries
Stars: ✭ 17 (-67.92%)
Mutual labels:  service
LGTVCompanion
Power On and Off WebOS LG TVs together with your PC
Stars: ✭ 420 (+692.45%)
Mutual labels:  service

Purpose

CircleCI

This code aims at demonstrating an use of services in python-for-android, and communication between services and a kivy front end.

That examples uses the OSC protocol for simplicity and historical reasons, (since an implementation was shipped with kivy historically, and a better one is now found in oscpy). The OSC protocol makes things simple because it's unconnected, you just send a message, and can forget about it. You bind functions to messages you receive. It's simple enough for a lot of things, and avoids the burden of maintaining a connection when both the service and front end can be restarted any time.

The app is composed of the front-end, defined in src/main.py, and the back-end defined in src/service.py.

The service (back-end):

  • is defined in buildozer.spec, in the services line. Following the example syntax
  • is started by the application at startup time, and can be stopped/restarted from the UI.
  • sends the current date, as a string, every tenth of a second to the UI, on a '/date' address.
  • answers with a random string on the '/message' address when a message is sent to the '/ping' address on its side.

The UI (front-end):

  • is defined in main.py
  • allows stopping/restarting the backend.
  • displays the last received messages from the backend in a RecycleView
  • allow to sent a '/ping' message to the backend, which will trigger a new message.

Building:

  • The package is built using CircleCI, you should be able to download the latest debug apk by clicking on the "Artifacts" tab on the latest build.
  • This project is a template repository, so you can create your own project from it, and setup CircleCI to build your version of it.
  • You can also just run the kivy/buildozer docker image to build your project from any Linux computer.
docker run -v $PWD:/project/ -w /project/ kivy/buildozer android debug

Once it's completed, you should have a bin/ directory with the apk inside.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].