重新安装SD卡时重新启动SD卡上的应用程序服务

时间:2010-10-18 23:49:46

标签: android sd-card android-sdcard

由于压倒性的用户投诉,我决定尝试允许我的Android应用程序用户按照the official documentation将其移至SD卡。但是,我的应用程序的核心功能要求后台服务持续运行。如果有人将我的应用程序移动到SD卡上,无论出于何种原因都会安装SD卡,我的后台服务将会被杀死。

只要我能在第一个可用的机会重启服务,那对我来说一切都好。不幸的是,尽管install-location指南声称我可以使用广播意图ACTION_EXTERNAL_APPLICATIONS_AVAILABLE来检测SD卡何时在本地重新安装,该标志本身的文档this newsgroup discussion和我自己的测试节目此广播未传送到可用的应用程序。只有尚未移动到SD卡的应用才能获得广播意图。

有没有办法重新启动后台服务而无需等待用户在重新安装SD卡后打开我的应用程序?

1 个答案:

答案 0 :(得分:7)

不可靠。您可以加入无权限广播Intents(例如,ACTION_SCREEN_OFF),该广播应该最终触发并以此方式获得控制权。正如Hackborn女士所说,正确的答案是ACTION_EXTERNAL_APPLICATIONS_AVAILABLE被修复。您可能还会看到在外部应用程序可用之后是否发生了某些与SD卡相关的广播(例如ACTION_MEDIA_MOUNTED),但我希望在外部应用程序可用之前已经通过所有这些广播。

相关问题