2017-07-09 1 views
2

Je veux démarrer un service Android lorsque le système démarre. J'ai déjà lu comment démarrer une application ici: http://dannywind.nl/auto-start-delphi-xe5-android-app-after-boot/ mais moi je ne veux pas démarrer une application mais un service.Comment démarrer un service android lorsque le système démarre?

comment le faire? I m sous delphi Berlin

+0

de la même façon que vous d o pour une application, il suffit de démarrer le service à la place, par exemple la première réponse, ici: https://stackoverflow.com/questions/2784441/trying-to-start-a-service-on-boot-on-android –

+1

Vous devez implémentez un 'BroadcastReceiver' qui gère la diffusion' BOOT_COMPLETED' pour ensuite exécuter le service. Implémenter un 'BroadcastReceiver' dans Delphi n'est pas impossible, mais ce n'est pas trivial non plus. Regardez autour de vous, il existe des tutoriels en ligne qui expliquent comment le faire. –

+0

ok, merci je vais regarder autour, couture leur est pas moyen d'échapper à construire un pot personnalisé pour cette – loki

Répondre

0

Si vous ne voulez pas créer un pot personnalisé/java voici comment je l'ai fait:

vous aurez juste besoin de mettre à jour votre manifeste android avec quelque chose comme ceci:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 

    <receiver android:name="com.alcinoe.content.ALStartServiceBroadcastReceiver"> 
    <intent-filter> 
     <action android:name="android.intent.action.BOOT_COMPLETED" /> 
    </intent-filter> 
    </receiver> 
    <meta-data android:name="com.alcinoe.startServiceName" android:value="com.embarcadero.services.myService"/> 

et ajoutez le alcinoe.jar (https://svn.code.sf.net/p/alcinoe/code/)

que tout ce que vous devez faire :)