一千萬個為什麽

搜索

Android:重新打開應用時會停止顯示活動嗎?

在Android中,我有一些代碼來檢查用戶是否已打開GPS,如果沒有,則啟動“設置”以將其打開。它看起來像這樣:

private void buildAlertMessageNoGps() {
    final AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder
    .setMessage(
    "Your GPS seems to be disabled - you need it to get a location fix. Turn it on now?")
    .setCancelable(false).setPositiveButton("Yes",
            new DialogInterface.OnClickListener() {
        public void onClick(
                @SuppressWarnings("unused") final DialogInterface dialog,
                @SuppressWarnings("unused") final int id) {
            Intent j = new Intent();
            j.setAction("android.settings.LOCATION_SOURCE_SETTINGS");
            startActivity(j);
        }
    }).setNegativeButton("No",
            new DialogInterface.OnClickListener() {
        public void onClick(final DialogInterface dialog,
                @SuppressWarnings("unused") final int id) {
            dialog.cancel();
        }
    });
    final AlertDialog alert = builder.create();
    alert.show();
}

但是,我發現如果用戶打開設置,打開GPS,然後正常使用應用程序,有一個奇怪的問題。通常,當用戶重新打開應用程序時,“設置”位於前面。如何設置它們以便它們不再重復出現?

我想知道我是否應該使用CLEAR_TOP標誌或類似的東西...我已經嘗試查看活動標誌的文檔,但發現它們有點令人困惑。誰知道?

最佳答案

聽起來你想使用 noHistory 屬性你的活動。

轉載註明原文: Android:重新打開應用時會停止顯示活動嗎?