GnssStatus.Callback не работает в Android 8
Я использовал
public class MyGPSStatusV24 extends GnssStatus.Callback {
@Override
public void onStarted() {
super.onStarted();
myLogApp.log("[onGpsStatusChanged] GPS_EVENT_STARTED...");
}
@Override
public void onStopped() {
super.onStopped();
myLogApp.log("[onGpsStatusChanged] GPS_EVENT_STOPPED...");
}
@Override
public void onSatelliteStatusChanged(GnssStatus status) {
super.onSatelliteStatusChanged(status);
myLogApp.log("[onGpsStatusChanged] onSatelliteStatusChanged...");
}
@Override
public void onFirstFix(int ttffMillis) {
super.onFirstFix(ttffMillis);
myLogApp.log("[onGpsStatusChanged] GPS_EVENT_FIRST_FIX...");
}
}
для проверки состояния GPS в Android 8.
И в основном есть:
mlocManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
mlocListener = new MyLocationListener();
if(Build.VERSION.SDK_INT < Build.VERSION_CODES.N ){
...
}else{
mlocManager.registerGnssStatusCallback(new MyGPSStatusV24());
}
mlocManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, mlocListener);
Но методы в MyGPSStatusV24 никогда не запускались.
Даже если я отключил GPS, onStopped не сработал.
Я пробовал этот код на устройстве Android 7 и работал, но когда я использую пиксель Google не работает. Я не знаю, если это ошибка в Google Pixel O в Android 8.
1 ответ
Решение
Хорошо, я проверил, и ошибка с устройства, это не ошибка кодека.