Usługa ma zaimplementowaną metodę onTaskRemoved().
Gdy usługa została uruchomiona za pomocą metody startService() onTaskRemoved() wywołana, gdy aplikacja została usunięta z listy ostatnich aplikacji poprzez przesunięcie.
Ale jeśli usługa rozpoczęła się z bindService(), to onTaskRemoved() nigdy nie był wywoływany.
Jak wykonać wywołanie usługi onTaskRemoved(), gdy aplikacja została usunięta z listy ostatnich aplikacji przez przesunięcie po uruchomieniu z bindService()?Usługa: onTaskRemoved nie jest wywoływany, jeśli uruchomiony z bindService
następujących metod zwanych jeśli zaczęło się:
1. bindService():
Activity﹕ onCreate()
CustomService﹕ onCreate()
CustomService﹕ onStart()
CustomService﹕ onStartCommand()
CustomService﹕ onBind()
// Here we swipe to remove app from recent-apps-list
CustomService﹕ onTrimMemory()
2. startService():
ActivityA﹕ onCreate()
CustomService﹕ onCreate()
CustomService﹕ onStart()
CustomService﹕ onStartCommand()
CustomService﹕ onBind()
// Swipe to remove app from recent-apps-list
CustomService﹕ onTrimMemory()
CustomService﹕ onTaskRemoved() // <=====
CustomService﹕ onUnbind()
Ważna uwaga: 'onTrimMemory()' jest wywoływana za każdym razem, gdy aplikacja przechodzi w tle, nie musisz "przesuwać, aby usunąć" aplikacji, aby ją wyzwolić. Nastąpi to, jeśli naciśniesz przycisk Home. Twój komentarz jest mylący. – ForceMagic