Jestem nowym użytkownikiem systemu Android i chcę opracować aplikację na Androida, która będzie powiadamiać użytkownika o zdarzeniach z modułu urządzenia IoT.

Na przykład za każdym razem, gdy drzwi się otwierają, moduły zgłaszają to do serwera, a następnie serwer wysyła to zdarzenie do aplikacji użytkownika, aby go powiadomić.

Dlatego potrzebuję niekończącej się usługi pierwszego planu / tła w mojej aplikacji, która działa w sposób ciągły.

Można go zatrzymać tylko wtedy, gdy użytkownik przejdzie do ustawień >> aplikacji i naciśnie przycisk „Wymuś zatrzymanie” lub „Odinstaluj”.

Eksplorowałem Internet przez długi czas i było wiele podobnych stron, ale nie mogłem znaleźć odpowiedzi.

Z przyjemnością usłyszę Twoje odpowiedzi. :)

-1
Ismael 15 grudzień 2019, 20:54
1
W rzeczywistości nie można utrzymać usługi w ciągłym działaniu, wystarczy zbliżyć się do niej tak blisko, jak pozwala na to system operacyjny i obciążenie pamięci danego urządzenia w danych okolicznościach. Realistyczne rozwiązania przechowują krytyczne wiadomości na serwerze, dopóki urządzenie nie zweryfikuje ich odebrania.
 – 
Chris Stratton
16 grudzień 2019, 23:51

1 odpowiedź

Kotlin

 val thread = Thread {

       //do something until user force stop or remove app from backstack

   Thread.CurrentThread().interrup()
   }

  thread.isdaemon = true

  thread.start()

HomeActivity:

  override fun onBackPressed() {
    moveTaskToBack(true)
  }
-2
IceSoul 15 grudzień 2019, 23:02