Sobes.tech
Junior

K čemu slouží služby v Androidu?

sobes.tech AI

Odpověď od AI

Služby v Androidu se používají k provádění dlouhotrvajících operací na pozadí, které nezávisí na uživatelském rozhraní. Nemají vlastní UI a jsou spuštěny nezávisle na životním cyklu aktivity.

Typy služeb:

  • Foreground služba: Provádí operace, které jsou viditelné pro uživatele (například přehrávání hudby). Vyžaduje oznámení pro uživatele.
  • Background služba: Provádí operace, které nejsou přímo viditelné pro uživatele. Může být omezen systémem (DOZE, Udržení aplikace).
  • Vázaná služba: Poskytuje rozhraní pro interakci s komponentami aplikace (například aktivitami), které jsou s touto službou spojeny.

Hlavní scénáře použití:

  • Stahování nebo synchronizace dat na pozadí.
  • Přehrávání hudby nebo jiných médií.
  • Sledování polohy.
  • Zpracování příchozích zpráv.

Příklad deklarace v AndroidManifest.xml:

<service android:name=".MyBackgroundService" />

<service
    android:name=".MyForegroundService"
    android:foregroundServiceType="mediaPlayback" />

Příklad spuštění služby:

// Spuštění služby na pozadí
val intent = Intent(this, MyBackgroundService::class.java)
startService(intent)

// Spuštění foreground služby (je vyžadováno oznámení!)
val foregroundIntent = Intent(this, MyForegroundService::class.java)
startService(foregroundIntent)