2017-07-09 104 views
2

我想在系统启动时启动Android服务。我已经阅读了如何在这里开始一个应用程序:http://dannywind.nl/auto-start-delphi-xe5-android-app-after-boot/但我不想启动一个应用程序,但一个服务。如何在系统启动时启动android服务?

该怎么办? 我在中号德尔福柏林

+0

用同样的方法,你的alcinoe.jar(https://svn.code.sf.net/p/alcinoe/code/

d o对于应用程序,只需启动服务,例如第一个答案,在这里:https://stackoverflow.com/questions/2784441/trying-to-start-a-service-on-boot-on-android –

+1

您必须实现一个'BroadcastReceiver'来处理'BOOT_COMPLETED'广播,然后运行该服务。在Delphi中实现'BroadcastReceiver'并不是不可能的,但它也不是微不足道的。看看周围,有网上教程解释如何做到这一点。 –

+0

好的,谢谢,我会环顾四周,缝他们是没有办法逃脱,为此建立一个自定义的罐子 – loki

回答

0

如果您不希望创建一个自定义的JAR/java的,这是我如何做:

你只需要像这样的东西更新Android清单:

<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"/> 

,并补充说,所有你需要做的:)

相关问题