Apk通過安裝器安裝並直接開啟應用與點選icon開啟應用的區別
阿新 • • 發佈:2019-01-02
最近在開發過程中碰到了一個問題:
apk通過安裝器安裝並直接開啟,進入介面後按Home回到手機桌面,再點選應用icon開啟app時,並不是回到了之前的頁面,而是像第一次啟動應用那樣,從導航頁啟動、再到主介面。而當你按返回鍵退出時,又會發現,你又回到了之前Home鍵退到後臺的頁面。
原因:通過安裝器啟動應用時Intent沒有帶Category,而我們點選icon啟動應用時是帶了Category。
可用以下方法解決:
在app的啟動activity的onCreate方法里加入重複判斷即可。
@Override protected void onCreate(Bundle savedInstanceState) {View Codesuper.onCreate(savedInstanceState); if (!this.isTaskRoot()) { Intent intent = getIntent(); String action = intent.getAction(); if (intent.hasCategory(Intent.CATEGORY_LAUNCHER) && action.equals(Intent.ACTION_MAIN)) { finish();return; } } setContentView(R.layout.activity_main); }