Android Services

Starting with Qt 5.7 you can use Qt to create Android services. A service is a component that runs in background, so, it has no user interface. It is useful to perform long-time operations (for example log GPS, wait for social media notifications, and so on). A service will continue to run even if the application that started it exits.

To create a service, you need to do the following steps:

  1. Uncomment the service part of your AndroidManifest.xml
  2. Make sure the service tag contains an android:process=":some_name" attribute. It is needed to force the service to run in a separate process than the activity.
  3. If you're using the same application (.so file) for activity and also for service, you need to use android.app.arguments meta-data to pass some arguments to your main function in order to know which one is which.
  4. Enable background running. Uncomment android.app.background_running meta-data and set it to true (android:value="true" ).

Qt will load the .so file defined in android.app.lib_name meta-data, will call the main function with all the arguments set in android.app.arguments meta-data.

See Android Services documentation for more info on this matter.