如何在Android中自动启动服务?

6
在Android应用程序中,它总是扩展Activity并且入口点是onCreate。因此,似乎用户必须选择应用程序并单击以启动它。(如果有误,请指导我。抱歉)
那么,如何实现在后台运行的服务而不需要用户点击启动应用程序呢?

有几种可能性,但如果没有更多关于您想实现什么的详细信息,就无法确定哪种方法最好。 - CommonsWare
基本上,将会有一个应用程序作为服务运行。当我在模拟器/设备上安装应用程序的apk时,服务将开始运行,这意味着整个应用程序是一个服务。该服务将能够接受外部请求等。 - gsmaker
安装后无法自动启动服务,但可以监听各种广播来启动服务。 - Falmarri
2个回答

10

使用IntentReceiver接收 BOOT_COMPLETED_ACTION。

然后在IntentReceiver中,您可以调用startService()。


4
请勿提供永久服务:http://www.androidguys.com/2009/09/09/diamonds-are-forever-services-are-not/ 代码污染与后台控制:http://www.androidguys.com/2010/03/29/code-pollution-background-control/ - CommonsWare

5
当我在模拟器/设备上安装应用程序apk时,服务将开始运行。
这是不可能的。Android不允许任何形式的应用程序在安装后立即运行。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接