簡體   English   中英

如何以編程方式強制停止使用Java的Android應用程序?

[英]How can I programmatically force stop an Android app with Java?

如何強制停止使用Java的應用程序? 我正在嘗試構建一個可以幫助清理后台進程的內存清理器。

我知道有一種方法可以殺死應用程序,但是當你進入運行列表時,即使你殺了它,應用程序仍然存在。 我嘗試了很多類似的內存清理應用程序,其中只有一個可以完全強制停止應用程序,但它有很多無用的通知 - 非常煩人。

PS:當你進入設置 - >應用程序時,你會看到一個應用程序列表。 點擊其中一個應用程序,您最終得到應用程序的信息。 有一個名為“強制停止”的按鈕。 通過點擊它,應用程序被殺死。 我想在我的應用程序中執行這種操作。 如何才能做到這一點?

強制停止的例子

獲取應用程序的進程ID,並終止該進程onDestroy()方法

@Override
public void onDestroy()
 {
    super.onDestroy();

    int id= android.os.Process.myPid();
    android.os.Process.killProcess(id);
 }

要么

getActivity().finish();
System.exit(0);

如果你想從你的活動中殺死其他應用程序,那么這應該可行

您可以使用以下方式發送信號:

Process.sendSignal(pid, Process.SIGNAL_KILL);

要徹底終止進程,建議調用:

ActivityManager.killBackgroundProcesses(packageNameToKill)

在發送信號之前。

請注意,您的應用需要擁有KILL_BACKGROUND_PROCESSES權限。 因此,在AndroidManifest.xml中,您需要包含:

<uses-permission android:name="android.permission.KILL_BACKGROUND_PROCESSES" />

嘗試使用以下代碼

    finish(); // for stopping Current Activity

    // add this line for Removing Force Close

    @Override
        protected void onDestroy() {
    // closing Entire Application
            android.os.Process.killProcess(android.os.Process.myPid());
            super.onDestroy();
        }
    }

可能這個解決方案將幫助您以編程方式強制關閉應用程序

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM