1. 程式人生 > >android 再按一次退出應用 出現閃屏 重啟

android 再按一次退出應用 出現閃屏 重啟

今天測試出來一個bug 再按一次 出現閃屏 重啟

 

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    switch (keyCode) {
        case KeyEvent.KEYCODE_BACK: {
            long secondTime = System.currentTimeMillis();
            if (secondTime - firstTime > 2000) {
                ToastUtil.show(this, "再按一次退出程式!");
                firstTime = secondTime;
            } else {
                ActivityUtil.finishAll();
                //com.amap.api.location.APSService
                android.os.Process.killProcess(android.os.Process.myPid());
                
                System.exit(0);

            }
            return true;
        }
    }
    return super.onKeyDown(keyCode, event);
}

 

覺得exit了應該沒問題,但是應用或者介面就會重啟

於是推測是不是服務出問題了了 或者沒關閉,用的高德地圖的 在ondestory 解除繫結定位監聽

然鵝。。。。 並沒有什麼卵用

於是看文章說 退出有其他activity在任務戰 於是在啟動介面 加入 Intent.CLEARTASK, Intent.NEW_TASK

再按一次果然可以了,但有時候剛進主頁面就關閉了

 

於是找解決辦法 發現退出前需要清空任務戰

在exit前 加入

finishAffinity();

就可以了