lin*_*ntu 9 android locationlistener wakelock google-play-services
我的应用必须持续跟踪用户.为此,我有一个LocationListener
应该连续接收位置更新.问题是当屏幕关闭时,它不会收到任何更新.
我试过添加一个部分唤醒锁:
mLocationRequest = LocationRequest.create();
mLocationRequest.setInterval(LocationUtils.UPDATE_INTERVAL_IN_MILLISECONDS);
mLocationRequest.setPriority(LocationRequest.PRIORITY_HIGH_ACCURACY);
mLocationRequest.setFastestInterval(LocationUtils.FAST_INTERVAL_CEILING_IN_MILLISECONDS);
mLocationClient = new LocationClient(ADS.getAppContext(), new LocationGatherer(), new LocationGatherer());
mLocationClient.connect();
PowerManager pm = (PowerManager) ADS.getAppContext().getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "My Tag");
wl.acquire();
Run Code Online (Sandbox Code Playgroud)
但它仍然没有收到更新.
小智 3
刚刚遇到了同样的问题。我也有相同的代码,尽管它在服务中。奇怪的是它不起作用。插入我的笔记本电脑并运行Android 应用程序高 CPU 使用率,无服务或唤醒锁中提到的命令:
adb shell dumpsys power |grep -i wake
Run Code Online (Sandbox Code Playgroud)
突然间,位置更新开始出现(按下电源按钮并且屏幕关闭)。
我真的不知道可能是什么问题,但这为我解决了问题。
截至目前,即使屏幕关闭也能接收位置更新。
归档时间: |
|
查看次数: |
1693 次 |
最近记录: |