检测是否已卸载某个应用

mob*_*kid 9 android

有没有办法在卸载应用程序时获得系统通知?

我想维护一份目前正在使用我的应用程序的所有客户信息的表格.但是,如果无法检测到此事件,那似乎是不可能的.

我能想到的第一个解决方案是在后台监听一个始终运行的服务android.intent.action.PACKAGE_REMOVED.但是,一旦卸载过程结束,该服务会被杀死,还是会在该过程开始之前停止?即使这是一个解决方案,当他们意识到应用程序的一部分在后台运行时,它有可能推迟很多人.

有什么建议?谢谢!

Jan*_*usz 6

您可以简单地执行此操作,并维护一个用户表,主动使用您的应用程序.只需在程序中的某个位置调用Web服务即可显示它处于活动状态.如果某个应用未使用某段时间,请将其标记为无效.


Dav*_*ebb 5

PACKAGE_REMOVED操作文档说明如下:

正在卸载的程序包不会收到此Intent.

因此,您可以监视其他正在卸载的应用程序,但不能监视自己的应用程序

因此,您可能需要跟踪谁仍在使用您的应用程序,而不是谁已经停止使用它.如果您不希望拥有自己的服务器的开销,您可以使用像Flurry这样的免费服务.