簡體   English   中英

Android后退按鈕強制應用重新啟動並且無法正確恢復

[英]Android back button forcing app restart and not resuming properly

在我的應用程序中,我要啟動的第一個活動是登錄活動( A )。 成功登錄后,將啟動另一個活動( B ),這樣做會使用finish()殺死活動A。 這是為了防止用戶單擊后退按鈕后返回到登錄屏幕,效果很好。 現在,當使用主屏幕按鈕從活動B關閉應用程序並從多任務視圖還原應用程序時,用戶將返回活動B ,這很棒。 但是,當用戶在活動B中點擊后退按鈕時,該應用程序將關閉,並且從多任務視圖還原該應用程序后,當我實際上希望單擊主頁按鈕的行為為用戶提供活動B時,活動A將再次啟動。

有什么辦法嗎?

如果用戶已經登錄,則只需在其登錄活動中添加一個支票即可完成並啟動您的B活動。

我真的很傻,只是在一個“相關”問題中找到了答案,但是當我提出問題時並沒有出現。

這是我所做的:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event)  {
    if (keyCode == KeyEvent.KEYCODE_BACK
            && event.getRepeatCount() == 0) {
        Log.d("CDA", "onKeyDown Called");
        onBackPressed();
        return true;
    }
    return super.onKeyDown(keyCode, event);
}


@Override
public void onBackPressed() {
    Log.d("CDA", "onBackPressed Called");
    Intent setIntent = new Intent(Intent.ACTION_MAIN);
    setIntent.addCategory(Intent.CATEGORY_HOME);
    setIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    startActivity(setIntent);
}

這實質上模擬了活動B中的主頁按鈕將執行的操作。

暫無
暫無

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

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