android - 是否可以检测到Android应用程序卸载?

标签 android uninstallation detect android-c2dm

我的应用程序正在使用Google的C2DM(推送通知)来通知用户朋友的新活动。一旦他们安装了该应用程序,我就向C2DM服务器注册该设备并存储用户的电话号码。因此,我知道用户正在使用我的应用程序,并且可以向他/她发送推送通知。但是,如果用户卸载我的应用程序,会发生什么,是否可以在我的应用程序中捕获它?还是唯一的方法是在发送C2DM时发现服务器上的错误,并且该错误无法到达,然后将用户标记为非活动状态?

我希望在用户的朋友正在使用应用程序以及不再使用时通知用户。

什么是此方案的最佳解决方案?

最佳答案

不幸的是,ACTION_PACKAGE_REMOVED意图将被发送给除您自己之外的所有接收者。确认here

有关您的C2DM计划的一些问题,因为我不太熟悉。如果用户只是长时间关闭设备,是否会触发您使用的错误情况? C2DM实际上如何报告“无法访问的”设备?这是仅在尝试发送推送通知而失败时发生的情况,还是以某种方式确定到达设备但无法正确处理时才发生的情况?显然,在第二种情况下,您的计划可以运行,但是我可以看到否则会出现一些“误报”。

供参考的旧版SO问题:android not receiving Intent ACTION_PACKAGE_REMOVED in the removed package

关于android - 是否可以检测到Android应用程序卸载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57839577/

相关文章:

android - 如何使用 adb 卸载 chainfire3d? (安卓)

Firefox Add-on SDK 1.6.1 是否可以制作卸载按钮?

JavaScript:检测 IE 的最佳方式

javascript - 如何检测用户是否禁用了 javascript?

android - 识别手写的圆形、菱形和矩形

android - 如何从 Uri 调整图像大小?

c# - Xamarin 安卓 : Archive - "App not installed. The package appears to be corrupt"

java - RecyclerView 装饰无法正确滚动

Wix:生成的 .chw 文件导致安装目录无法删除

Android - 是否可以检测到微笑?