簡體   English   中英

當按下后退按鈕時,我的應用程序關閉了最近的應用程序

[英]When pressed back button, my app dismiss recent apps

如果用戶按下backPressed運行我的活動,則該活動將被關閉,並且在最近的應用程序列表中不可見。 我希望它顯示在最近的應用程序列表中。 我怎樣才能做到這一點?

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

  Intent i = new Intent(Intent.ACTION_MAIN);
  i.addCategory(Intent.CATEGORY_HOME);
  i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
  startActivity(i);
}

表現:

    <activity
                android:name=".MyActivity"
                android:configChanges="mcc|mnc|locale|touchscreen
                                      |keyboard|keyboardHidden
                                      |navigation|orientation
                                      |screenLayout|screenSize
                                      |fontScale"
                android:excludeFromRecents="true"
                android:exported="true"
                android:launchMode="singleTask"
                android:screenOrientation="portrait" />

從AndroidManifest刪除此行表單

android:excludeFromRecents="true"

或將其設置為false

android:excludeFromRecents="false"

我認為@begiNNer希望從CleanMaster應用程序之類的設備中刪除最近的應用程序(指上次使用的應用程序)。 因此,您必須獲得正在運行的應用程序的pid ,而不是一個一個地刪除它。如果是這種情況,則下面的代碼將起作用。

碼:

activityManager.killBackgroundProcess(pid);

android.os.Process.killProcess(pid);

獲取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);
   System.out.println(info.pid);
}

暫無
暫無

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

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