开机自启并在应用程序安装后启动服务

4
我知道你可以在启动时启动服务,但是如何在应用程序被安装或重新安装后启动服务呢?
我想在通过Eclipse的Debug/Run方式将应用程序放入设备后立即启动服务。
1个回答

1
但是在应用程序安装或重新安装后,我该如何启动服务?
安装完成后,您无法控制,因此必须通过活动或其他方式启动服务。
有一个ACTION_PACKAGE_REPLACED广播Intent,您可以监视重新安装的情况,尽管我没有尝试过。

因此,当我的主活动启动时,我必须启动服务。这很好。现在,如果服务正在运行,并且如果我再次启动它(当我的主要活动开始以确保它已启动),最终将触发启动方法两次。如何在服务中检测它是否已经启动并接收到第二个启动? - Pentium10
现在,如果服务正在运行——它没有运行,因为您重新安装了应用程序。如何在服务中检测是否已经启动并接收到第二个启动?boolean数据成员似乎是一种可能性,在服务的onStart()中切换。您还可以使用ActivityManager中的getRunningServices(),只有在需要时才让活动进行手动启动,尽管我没有尝试过这样做。您只会遇到一个永久运行的服务问题(尝试在引导时和永远运行),我不喜欢那些。 - CommonsWare

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