在启动服务的活动被销毁后,不会在单独的服务中调用LocationListener.onLocationChanged。
МетодLocationListener.onLocationChangedвотдельномсервисеневызываетсяпослезавершенияработыактивности,котораязапустиласервис。
在onCreate方法关闭活动中:
locationService = new Intent(this, LocationService.class);
locationService.putExtra("MESSENGER", new Messenger(messageHandler));
startService(locationService);
此代码服务从未在活动中停止。
活动正在运行时,位置更新已正确收到。
销毁活动后,服务仍然停止运行,但未收到位置更新。
locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);
Criteria criteria = new Criteria();
locationProvider = locationManager.getBestProvider(criteria, false);
locationManager.requestLocationUpdates(locationProvider, 0, 0, this);
答案 0 :(得分:0)
仅在模拟器中发生。在真实设备上,服务继续运行并尝试获取位置更新。