Code: Select all
context.startForegroundService(Intent(context, MyForegroundService::class.java))
Code: Select all
override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {
// do work...
startForeground(ID, notification, ServiceInfo.FOREGROUND_SERVICE_TYPE_LOCATION)
return START_STICKY
}
< /code>
Nachdem das System den Dienst getötet hat (z. B. geringe Ressourcen), wird versucht, ihn später "aus dem Hintergrund" neu zu erstellen. Hier kommt das [url=viewtopic.php?t=20324]Problem[/url] für Anroid 12+ -Geräte:
[*] Wenn ich startforder ()
Wenn ich Startforder nicht nenne () . /> < /ul>
In einfachen Worten stürzt der Dienst, egal was Sie tun. Dies scheint ein Android -Designfehler zu sein. Es scheint, dass die einzige Problemumgehung darin besteht, start_not_sticky zu verwenden und einen Workmanager bei OnDestory () zu planen, um einen geringeren Teil der Arbeit zu erledigen. Denke ich das richtig?