0
在Android中,我有一些代碼來檢查用戶是否已打開GPS,然後啓動「設置」以使它們打開,如果它們沒有。它看起來像這樣:Android:當應用程序重新打開時停止活動?
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標誌或類似的東西。我已經試過看文檔的活動標誌,但發現他們有點混亂。有人知道嗎?