我尝试了这段代码,但它没有用。我正在上面的marshmallow设备上进行测试。 android是否允许在没有系统应用程序或root
的情况下执行此操作List<ApplicationInfo> packages;
PackageManager pm;
pm = getPackageManager();
//get a list of installed apps.
packages = pm.getInstalledApplications(0);
ActivityManager mActivityManager = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
for (ApplicationInfo packageInfo : packages) {
if((packageInfo.flags & ApplicationInfo.FLAG_SYSTEM)==1)continue;
if(packageInfo.packageName.equals("mypackage")) continue;
mActivityManager.killBackgroundProcesses(packageInfo.packageName);
}
我也是这个代码部分,但给了我这个错误:
java.io.IOException:无法运行程序“su”:error = 13,Permission denied
try {
Process suProcess = Runtime.getRuntime().exec("su");
DataOutputStream os = new DataOutputStream(suProcess.getOutputStream());
os.writeBytes("adb shell" + "\n");
os.flush();
Context newContext = LauncherActivity.this;
ActivityManager activityManager = (ActivityManager) newContext.getSystemService(Context.ACTIVITY_SERVICE);
List<ActivityManager.RunningAppProcessInfo> appProcesses = activityManager.getRunningAppProcesses();
for (ActivityManager.RunningAppProcessInfo appProcess : appProcesses) {
if (appProcess.processName.equals("packagename")) {
} else {
os.writeBytes("am force-stop " + appProcess.processName + "\n");
}
}
os.flush();
os.close();
suProcess.waitFor();
} catch (IOException ex) {
ex.getMessage();
Toast.makeText(getApplicationContext(), ex.getMessage(), Toast.LENGTH_LONG).show();
} catch (SecurityException ex) {
Toast.makeText(getApplicationContext(), "Can't get root access2",
Toast.LENGTH_LONG).show();
} catch (Exception ex) {
Toast.makeText(getApplicationContext(), "Can't get root access3",
Toast.LENGTH_LONG).show();
}
答案 0 :(得分:0)
您无法清除最近的其他应用程序。您可以从最近清除或隐藏您的应用程序。