我有A Activity
和B Activity
,都是LocationListener
。所以两者都有
@Override
public void onProviderDisabled(String provider) {
// Open AlertDialog
}
我从B Activity
开始A Activity
。当我在B
上关闭GPS时,会打开AlertDialog
,如代码所示,然后我打开GPS并关闭AlertDialog
。现在,当我返回A Activity
时,它也会显示AlertDialog
,因为它会在几秒钟前关闭GPS时收到通知。
我想即使我从B
打开了A
,A
也没有完全销毁,而是保存在后台上。那么如何在不从活动Backstack 移除A
的情况下解决此问题?应用只应在屏幕上的任何活动中打开AlertDialog
。
答案 0 :(得分:1)
你应该停止在活动A的onPause或onStop方法中听gps。并开始收听onResume。
喜欢:在A
onStop(..){
// stop gps listening here
}
再次从B ..
返回onResume(..){
// start gps listening here
}