如何解决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();
}
但我找不到在家做同样的方法。
有人可以帮忙吗?
贝克斯
解决方法
在ѭ1中,您可以致电
isFinishing()
,以了解活动是否由于某种原因而结束或只是暂停。在这里查看文档
,但是首先请检查您所写的逻辑是否等于onBackPressed()
。编写一些日志以确认您的代码部分处于活动状态
如果我正确理解你的话。您有一个活动,从该活动中可以看到一些风景,您已经启动了另一个活动。但是,当您单击最新活动的后退键时,您需要在先前活动中执行一些操作。如果是这种情况,则必须以onResume()
方法编写逻辑。因为只要您单击返回键,就可以完成顶部的关键活动,并且您的焦点将移至上一个活动的“ 4”方法。请勿覆盖onKEyDown()
或onBackPressed()
。
如果您觉得我的回答对您有用,请不要忘记投票。
谢谢
迪帕克
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。