进程应用"/>
Android杀死双进程应用
双进程守护应用,造成后台常驻,让手机变的很慢如何才能杀死呢?forceStopPackage() 副作用太大如杀死定时器通知等所以要谨慎使用
方法forceStopPackage() 如杀死双进程守护应用 微信com.tencent.mm(一般一键加速应该保留微信,微信被干掉后是无法接受到消息的)
ActivityManager am = (ActivityManager) getSystemService(ACTIVITY_SERVICE);Method method;try {method = Class.forName("android.app.ActivityManager").getMethod("forceStopPackage", String.class);method.invoke(am, "com.tencent.mm");} catch (IllegalAccessException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (InvocationTargetException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (NoSuchMethodException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}
在androidmainifest.xml中加入权限
<uses-permission android:name="android.permission.FORCE_STOP_PACKAGES"/>
forceStopPackage并不能被第三方程序调用,只能随系统build。使用条件:
1)权限:<uses-permission android:name="android.permission.FORCE_STOP_PACKAGES"/>
2)只能运行在系统进程:android:sharedUserId="android.uid.system"
3)android.uid.system属性的进程 须要在android.mk里这样设置:
LOCAL_CERTIFICATE := platform
既然是系统应用了,那么可以直接调用了不需要再反射了
ActivityManager am = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
am.forceStopPackage("com.tencent.mm");
发现微信确实被干掉了
那么如何像360卫士一样不需要系统应用就可以杀死双进程应用呢,发现360使用了系统设置里辅助功能服务,便可以超级加速,后续再看看如何实现的
更多推荐
Android杀死双进程应用
发布评论