Приложение GPS не запускается после загрузки при настройке обновления API уровня 26 (Oreo) - PullRequest
0 голосов
/ 02 декабря 2018

У меня есть приложение gps в магазине Google, которое предназначено для API версии 25. Я сделал некоторое функциональное обновление и обновил версию target / compile до 26, потому что Google требует этого в эти дни.Но мой фоновый сервис не работает, когда он пытается запустить после загрузки.Студия Android не выдает никаких ошибок при отладке.Когда я возвращаю целевую версию обратно на 25, мое приложение запускается нормально после загрузки.

@Override
public IBinder onBind(Intent arg0) {
    // TODO Auto-generated method stub
    return null;
}
@Override
public void onCreate() {
// TODO Auto-generated method stub
super.onCreate();
PowerManager p = (PowerManager) getSystemService(this.POWER_SERVICE);
wakeLock=p.newWakeLockPowerManager.PARTIAL_WAKE_LOCK, "tag:DoNotSleep");    
}

Android Studio выдает предупреждение об исключении NullPointerException или теге для следующей строки.Но это не мешает мне строить код.Кажется, мне нужно что-то изменить в следующей строке.

wakeLock=p.newWakeLockPowerManager.PARTIAL_WAKE_LOCK, "tag:DoNotSleep");

1 Ответ

0 голосов
/ 02 декабря 2018

https://developer.android.com/about/versions/oreo/android-8.0-changes

В качестве одного из изменений, которые вводит Android 8.0 (уровень API 26), чтобы увеличить время автономной работы, когда ваше приложение переходит в состояние кэширования без активных компонентов, система освобождает любые пробуждения, которыеприложение держит.

Так что, если вы хотите, чтобы ваш сервис был активным, вы не захотите.

...