最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android通過反射實現(xiàn)強制停止應(yīng)用程序的方法

 更新時間:2016年02月18日 11:19:56   作者:lg878398509  
這篇文章主要介紹了Android通過反射實現(xiàn)強制停止應(yīng)用程序的方法,涉及Android的反射機制與進程操作的相關(guān)技巧,需要的朋友可以參考下

本文實例講述了Android通過反射實現(xiàn)強制停止應(yīng)用程序的方法。分享給大家供大家參考,具體如下:

private ActivityManager manager;
private List<RunningAppProcessInfo> runningProcesses;
private String packName;
private PackageManager pManager;
@Override
public void onReceive(Context context, Intent intent) {
    pManager = context.getPackageManager();
    manager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
    killOthers(context);
}
/**
* 殺死其他正在運行的程序
*
* @param context
*/
private void killOthers(Context context) {
    runningProcesses = manager.getRunningAppProcesses();
    for (RunningAppProcessInfo runningProcess : runningProcesses) {
      try {
        packName = runningProcess.processName;
        ApplicationInfo applicationInfo = pManager.getPackageInfo(packName, 0).applicationInfo;
        if (!"com.asms".equals(packName)&&filterApp(applicationInfo)) {
          forceStopPackage(packName,context);
          System.out.println(packName+"JJJJJJ");
        }
      }catch(Exception e){
        e.printStackTrace();
      }
    }
}
/**
*強制停止應(yīng)用程序
* @param pkgName
*/
private void forceStopPackage(String pkgName,Context context) throws Exception{
    ActivityManager am = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
    Method method = Class.forName("android.app.ActivityManager").getMethod("forceStopPackage", String.class);
    method.invoke(am, pkgName);
}
/**
* 判斷某個應(yīng)用程序是 不是三方的應(yīng)用程序
* @param info
* @return
*/
public boolean filterApp(ApplicationInfo info) {
    if ((info.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0) {
      return true;
    } else if ((info.flags & ApplicationInfo.FLAG_SYSTEM) == 0) {
      return true;
    }
    return false;
}

說明:如果是在Activity中將onReceiver方法換成onCreate方法即可。

2.需要在AndroidManifest.xml 把package的userid設(shè)置為system

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.asms"
android:versionCode="1"
android:versionName="1.0" android:sharedUserId="android.uid.system">

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android開發(fā)入門與進階教程》、《Android Service組件使用技巧總結(jié)》、《Android基本組件用法總結(jié)》及《Android控件用法總結(jié)

希望本文所述對大家Android程序設(shè)計有所幫助。

相關(guān)文章

最新評論

虹口区| 西贡区| 宁化县| 临夏县| 西和县| 南召县| 湖北省| 武安市| 临安市| 德州市| 乌拉特前旗| 明星| 洪江市| 互助| 卓尼县| 南和县| 林甸县| 台中县| 东丰县| 花莲县| 那曲县| 巨鹿县| 宝山区| 五常市| 亚东县| 八宿县| 南康市| 安图县| 抚顺市| 定远县| 普洱| 新蔡县| 昌吉市| 于田县| 泰兴市| 贡嘎县| 广饶县| 班戈县| 上犹县| 宾阳县| 临潭县|