首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >知道我的应用程序是否已卸载

问知道我的应用程序是否已卸载
EN

Stack Overflow用户
提问于 2015-08-19 09:47:17
回答 2查看 167关注 0票数 2

经过大量的研究,我得出了一个结论,即卸载不能被跟踪,因为除了卸载的应用之外,没有向所有的应用程序广播“已删除的包”操作。

然后我找到了一种跟踪卸载的方法。我通过发送GCM并在响应中获取“未注册”错误来保存所有卸载用户信息(GCM为卸载该应用程序的设备提供“未注册”错误)。

所以现在,当我安装和卸载歌剧麦克斯应用程序时,它打开了一个网页,请求“卸载调查”。他们怎么会这么做?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-19 10:12:29

参见Droidcon 2015中的这些幻灯片,其中一些人反向设计了Opera是如何做到这一点的,并请参阅这个GitHub存储库中的一些示例代码。

票数 2
EN

Stack Overflow用户

发布于 2015-08-19 10:13:15

当我卸载Opera Max时,我无法复制这种行为,但我相信他们的技术如下所示:

  • 他们以某种方式注册了一个事件处理程序,该处理程序将在安装应用程序的目录消失时发送意图。
  • 该事件处理程序在应用程序卸载后幸存下来。
  • 当目录消失时,意图触发--当然,它们现在不能运行自己的代码(因为它已经卸载了),但是它们可以将您引导到任何浏览器中的网页。

当我尝试这个程序时,我没有安装任何其他Opera应用程序--如果您有另一个应用程序,您也控制它还没有卸载,那么每个应用程序都很容易监视另一个应用的卸载。

我在Lollipop上运行--也许最近版本的Android已经关闭了一个安全漏洞。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32092006

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档