安卓应用运行、卸载、清除数据、强制停止
2016-02-23 12:34
411 查看
1、卸载应用
2.运行
3.强制停止
4.清除数据
Uri packageURI = Uri.parse("package:" + packageName); Intent intent = new Intent(Intent.ACTION_DELETE, packageURI); this.startActivity(intent);
2.运行
PackageManager pm = getPackageManager(); //可以设置启动的方式,这里无设置 Intent intent = pm.getLaunchIntentForPackage(resolveInfo.activityInfo.packageName); startActivity(intent);
3.强制停止
mAm = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE); ResolveInfo resolveInfo = (ResolveInfo) apksListAdapter.getItem(mSelectedPosition); mAm.forceStopPackage(resolveInfo.activityInfo.packageName);
4.清除数据
String packageName = resolveInfo.activityInfo.packageName; boolean res = mAm.clearApplicationUserData(packageName, mClearDataObserver); mPackageManager.deleteApplicationCacheFiles(packageName, null); mPackageManager.clearPackagePreferredActivities(packageName);
class ClearUserDataObserver extends IPackageDataObserver.Stub { public void onRemoveCompleted(final String packageName, final boolean succeeded) { if(succeeded){ Message message = new Message(); message.what = 0x110; clearDataHandler.sendMessage(message); } //清除数据完毕后可以更新相关的UI } }
相关文章推荐
- SmartBusinessDevFramework架构设计-3:考虑开源?
- 如何写出好的C代码
- iOS海哥开发笔记 (海哥原创,C语言之内存四区模型和函数调用模型)
- iOS软件安装图文教程(免证书)
- JAVA锁漫谈,最好的锁是无锁
- IOS系列——NStimer
- Ubuntu+Apache+PHP+Mysql环境搭建
- Vim命令笔记
- 程序员面试题精选100题(32)-不能被继承的类[C/C++/C#]
- dns服务器未响应怎么解决
- SQL常用语句
- php析构方法关于栈的问题
- 程序员面试题精选100题(31)-从尾到头输出链表[数据结构]
- Emulation currently requires hardware acceleration
- IOS比较常用的第三方组件及应用源代码(持续更新中)
- iOS海哥开发笔记 (海哥原创,NSCharacterSet 简单用法)
- UIViewController的切换效果
- ios海哥开发笔记 (海哥原创,iOS缓存机制NSUserDefaults)
- android studio中导入PagerSlidingTabStrip开源库
- MapReduce