我不確定是否有更好的方法來做到這一點,但我想檢測導致應用程序暫停的原因。Android檢測導致onPause的原因
在一個特定的活動,顯示一個跟蹤地圖,如果用戶點擊返回或家我想停止GPS,但如果屏幕熄滅我想讓GPS保持運行我也使用喚醒鎖,所以它不睡眠(是的,我知道這可能應該是一個服務,但是這將是V2,我的時間不多了!)
當返回按鈕被按下
@Override
public void onBackPressed() {
wl.release();
this.mMyLocationOverlay.disableMyLocation();
this.mMyLocationOverlay.disableCompass();
if (mLocManager != null) {
mLocManager.removeUpdates(mLocListener);
}
super.onBackPressed();
}
但我不能,我重寫找不到爲家庭做同樣的事情。
誰能幫助?
貝克斯
Ahhh isFinishing!謝謝! – Bex 2011-05-24 15:00:47
這裏的問題是,如果onPause是由home按鈕引起的,isFinishing()返回false,就好像一個新的活動正在接管,所以我們不能使用這個確定如果該暫停是由主屏幕按鈕按!這讓我瘋狂!有誰知道是否有可靠的方法來判斷homebutton是否被按下? – 2012-01-16 15:05:56
多數民衆贊成在正確的,你不能用這個來知道onPause是否是因爲一個主頁按鈕。可能是你可以註冊一個主頁按鈕廣播 – Varun 2012-01-20 18:17:19