1

知りたいのですが、実行中のアプリケーションを自分のアプリケーションから終了または閉じることはできますか? はいの場合、どのように?

これについてグーグルで検索しましたが、解決策が見つかりませんでした。使ってみkillBackgroundProcessesましたが、うまくいきませんでした。タスクマネージャーのようなものを期待している機能。何か提案してください。前もって感謝します。

4

2 に答える 2

1

Android OS 以外の誰もプロセスを強制終了できません。

Androidマーケットのタスクキラーのほとんどはアプリを強制終了せず、プ​​ロセスを再起動するだけです

を使用して

public void restartPackage (String packageName) このメソッドがアクティビティによって呼び出されると、オペレーティング システムがすぐに呼び出します

savedInstanceState を呼び出して、強制終了するアクティビティの状態を保存します。今、このプロセスは

メモリから削除され、OS がその状態を保存しました。次にユーザーがそのアクティビティを開始したときに、

殺された場所から、つまり再開された場所から開始されます。どこからでも確認できる

誰もプロセスを強制終了できないため、プロセスを強制終了しないことをタスクマネージャーに伝えます。この方法も

ICSで働く。

上記の方法については、こちらをご覧ください。私が知る限り、killBackgroundProcesses (String packageName) は API 8 以降用です。

于 2014-08-18T09:54:11.530 に答える
0

まず、プロセスの pid が必要です。次のコードのように、パッケージ名で取得できます。

ActivityManager am = (ActivityManager)context.getSystemService(Context.ACTIVITY_SERVICE);
    List<ActivityManager.RunningAppProcessInfo> pids = am.getRunningAppProcesses();
             int processid = 0;
       for(int i = 0; i < pids.size(); i++)
       {
           ActivityManager.RunningAppProcessInfo info = pids.get(i);
           if(info.processName.equalsIgnoreCase("here your package name")){
              processid = info.pid;
           } 
       }

次に、指定されたpidでプロセスを終了するためにkillProcess関数を使用できます。

于 2014-08-18T09:42:34.037 に答える