我有一個應用程序與兩個進程。第二個過程在創建活動時開始。發現在清單這項活動的摘錄如下:如何殺死Android應用後臺進程?
<activity
android:name=".ActivityInAnotherProcess"
android:process=":anotherprocess"
android:launchMode="singleTask"
...
後「:anotherprocess」開始我不過需要以某種方式殺死主過程中,通過亞洲開發銀行,在代碼中。
我試過DDMS中的「終止應用程序」,主進程被終止,但在幾秒鐘後重新創建。
我試過這段代碼:
String packageName = c.getPackageName();
ActivityManager activityManager = (ActivityManager) c.getSystemService(Context.ACTIVITY_SERVICE);
activityManager.killBackgroundProcesses(packageName);
但主要的進程被終止只有幾秒鐘後重新創建。
更新: 上面的代碼工作。我在另一個進程中啓動Activity之後幾秒鐘就調用它,但似乎另一個進程在我殺死主進程之前並未完全啓動。現在我正在殺死另一個進程中的主進程。這現在起作用。謝謝大家!
你試過了嗎? android.os.Process.killProcess(android.os.Process.myPid()); – Alan
@dalmendray爲什麼你想殺死後臺進程? –
@Charuka我需要殺死主進程來模擬Android何時執行它。我在我的代碼中進行了進程間通信,我需要根據主進程被終止的事實來進行測試(因爲如果Android需要更多資源,可能會發生) – dalmendray