我有一个设备管理应用程序,基本上是从启动时作为后台服务运行的。我想在安装后立即启动此应用程序。如何实现这一点?
您无法这样做——没有办法仅仅因为应用程序被安装就自动启动服务。
第一次必须通过某种活动由用户调用该应用程序。或者,您需要通过清单文件挂钩到一些相关广播Intent
,这样当其中一个事件发生时,您就可以控制并启动您的服务。或者,您需要请求用户重新启动,以便您的BOOT_COMPLETED
Intent
过滤器可以获得控制权。
曾经存在一个漏洞- Android Analytics SDK在安装后立即发送意图,但现在已关闭(当然会产生很多混乱)。
但我相信最终答案就在这里:
http://developer.android.com/about/versions/android-3.1.html#launchcontrols
这似乎表明,在Android 3.1中,谷歌做出了决定,即应用程序处于停止状态,直到用户明确激活它们,例如通过启动应用程序或放置小部件。
这意味着监听常见广播的策略(即暗中启动您的应用程序)也不起作用。