Имам услуга, която трябва да работи във фонов режим. Започва, когато приложението ми е отворено, и завършва всеки път, когато приложението ми бъде изключено от потребителя.
Всеки път, когато приложението ми е на заден план или когато екранът е изключен, все още имам нужда от работа на услугата.
Постигнах това с WakeLock, но по някаква причина получавам грешката в заглавието.
Това е загрижено, защото може да изтича памет от WakeLock (ако разбирам правилно).
Мога да задействам грешката, като рестартирам приложението си.
Ето съответния код:
public class SomeService extends Service {
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
super.onStartCommand(intent, flags, startId);
PowerManager manager = (PowerManager) getSystemService(POWER_SERVICE);
mWakeLock = manager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "TAG");
if (!mWakeLock.isHeld()) mWakeLock.acquire();
//Handle other processing
return START_STICKY;
}
@Override
public void onDestroy() {
if (mWakeLock.isHeld()) mWakeLock.release();
super.onDestroy();
}
}
Объркан съм, защото в моя onDestroy()
пускам WakeLock. Не съм сигурен какво задейства грешката.
onCreate()
? - person iosdude   schedule 16.02.2017