[英]How to close all Recent App through my app programmatically in android
我正在設計用於刪除最近任務的應用程序。 我用這段代碼刪除最近的任務,
public boolean removeTask(int taskId, int flags) {
try {
return (Boolean) mRemoveTask.invoke(mActivityManager, Integer.valueOf(taskId), Integer.valueOf(flags) );
} catch (Exception ex) {
Log.i("MyActivityManager", "Task removal failed", ex);
}
return false;
}
public void clearRecentTasks() {
List<ActivityManager.RecentTaskInfo> recents = mActivityManager.getRecentTasks(1000, ActivityManager.RECENT_IGNORE_UNAVAILABLE);
// Start from 1, since we don't want to kill ourselves!
for( int i=1; i < recents.size(); i++ ) {
removeTask( recents.get(i).persistentId, 0);
}
}
查克這一個:
private void killRunningApps(final Context context) {
this.timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
List<String> packages = InstalledApps.getRunning(context);
assert packages != null;
for (String packageName : packages) {
AppInfo info = InstalledApps.getAppInfo(packageName, context);
assert info != null;
if ((info.getFlag() & ApplicationInfo.FLAG_SYSTEM) == 1) continue;
manager.killBackgroundProcesses(packageName);
}
}
}, 0, this.updateInterval);
}
首先,您必須聲明經理:
private ActivityManager manager;
在onCreate()中:
this.manager = (ActivityManager) this.getSystemService(Context.ACTIVITY_SERVICE);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.