我开发了一个使用广播接收器获取纬度值的应用程序。它工作正常,但每当屏幕被锁定时,我都没有任何价值。但如果我解锁屏幕,我就会得到价值。有人帮我解决问题吗?
答案 0 :(得分:2)
当手机进入深度睡眠模式时,屏幕关闭几分钟后,GPS停止。 您需要在获得GPS更新期间获取WakeLock
PowerManager powerManager = (PowerManager) context.getSystemService(context.POWER_SERVICE);
wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "WakeLock");
wakeLock.acquire();
并在完成后释放锁定。
wakeLock.release();
答案 1 :(得分:1)
请确保您在 onPause 方法中没有做任何奇怪的事情,在我的情况下我很生气,因为GPS在屏幕被锁定时停止工作,这是因为在我的onPause方法中我删除了更新来自位置经理。
答案 2 :(得分:0)
在您的清单文件中尝试这可能会有所帮助......我也不确定。尝试一次
android:configChanges="orientation|keyboard|keyboardHidden"
android:launchMode="singleInstance"