【问题标题】:onPause(), different results from home and back buttononPause(),home键和后退键的结果不同
【发布时间】:2015-05-12 11:14:13
【问题描述】:

我正在创建一个应用程序,它使用locationManager() 来处理来自 GPS 的更新。当应用程序关闭时,我希望 locationManager 的更新停止并且此刻有这段代码。

@Override
protected void onPause() {
    super.onPause();
    if(locationManager != null){
        locationManager.removeUpdates(locationListener);
}

当我使用返回按钮退出应用程序时,会调用 onPause() 并停止 GPS。这里没有什么奇怪的。但是,如果我按下主页按钮,状态栏中的 GPS 标记仍然可见,即使 onPause 的调用方式相同。

【问题讨论】:

  • 您是否覆盖了 onStop()?

标签: android gps back-button onpause android-homebutton


【解决方案1】:

这是因为当您使用返回按钮退出应用程序时,Activity 被销毁(接收 onDestroy 回调)。并且由于没有进程使用 GPS 标记也被隐藏。如果您锁定设备屏幕或按主页按钮应用程序仍在运行但活动已停止。 使用您的代码,在 onPause 之后您将不会获得任何 GPS 更新,直到您再次注册它们。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多