设为首页收藏本站
查看: 328|回复: 0

android应用卸载提示[绝对经典,不容错过]

[复制链接]

75

主题

75

帖子

442

积分

网站编辑

Rank: 8Rank: 8

积分
442
发表于 2017-1-18 10:33:18 | 显示全部楼层 |阅读模式

大家已经熟悉这样的场景:win系统中程序被卸载时,弹出调查问卷之类的窗口。从而帮助程序开发者了解用户需求,用于进一步的改进,意义重大。那么,在android平台是否有方法在自己的应用被卸载时,弹出调查问卷呢?

终于,终于被ME找到方法了undefined,并且对其进行了优化(耗电和性能)。

原理如下:


在调用系统卸载器卸载应用时,会打印如下信息:
03-10 21:44:32.644: I/ActivityManager(1332): Starting activity: Intent { act=android.intent.action.DELETE dat=package:com.dianping.v1 cmp=com.android.packageinstaller/.UninstallerActivity } from pid 14790
从打印的信息中我们可以看出,卸载应用的Action是android.intent.action.DELETE,参数是卸载应用的包名package:com.dianping.v1,系统卸载器的活动名称为com.android.packageinstaller.UninstallerActivity。
基于以上的研究,我们可以通过check系统的log信息,来检测自己应用被卸载的事件,从而弹出调查问卷。
check 系统的log信息,是一件耗时、耗电的Task,如何改进用户的体验呢?省电、低功耗、避免用户用户使用手机时出现卡顿情况,是我们优化的目标。
优化的方法有如下几点:
1.检测用户手机屏幕状态,锁屏状态,中止工作;屏幕点亮时,开始工作。
2.在用户进入关键活动时,启动check系统的log。关键的活动如系统设置中管理应用程序页,应用详情页,系统卸载页。在用户推出关键活动时,停止对log的check。
3.为了避免出现卡顿现象,我们每隔1s检测一下当前活动,每读取一条log信息,就yeild交出CPU控制权。

话不多说直接上demo:

百度云附件:Uninstall.zip   


回复

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

推荐阅读 More>
广告位

Powered by Discuz X3.2

© 2001-2016   

合作伙伴

返回顶部 返回列表