Cześć,
Załóżmy że chcę stworzyć appke która będzie tylko serwisem działającym w tle. Appka nie ma mieć GUI. Po instalacji aplikacji, serwis odpala się automatycznie i pracuje sobie do momentu aż aplikacja nie zostanie usunięta. Czy takie coś jest możliwe ?
WhatsApp, Messenger są takimi apkami. Co prawda mają GUI, ale mają też serwis w tle, z którego wyskakują powiadomienia.
Możesz zrobić apkę, która ma GUI. ale jedyne co robi, to uruchamia serwis i samoczynnie się zamyka, więc poza błyśnięciem nie ma żadnego GUI.
Ostatnio jak dłubałem przy androidzie (+5 lat temu), serwis który ma prawo działać w tle, był uruchamiany dopiero, gdy aplikacja z UI była wystartowana przez użytkownika przynajmniej raz.
W dokumentacji było, że aplikacja zaraz po instalacji jest w trybie zawieszenia i to użytkownik ją odwiesza w momencie uruchomiania czegoś co ma UI.
Wszystkie systemy mobilne silnie ograniczają możliwość pracy w tle, by oszczędzać energię. Żeby proces działał w tle musi być spełnionych kilka warunków.
Aplikacja musi mieć odpowiednie w wpisy w manifeście i wykonywać odpowiednie czynności, np podczytywać połączenie audio, albo trzymać lock'a na dostęp do WiFi, itp... . Całość jest dość skomplikowana.
@andrzejlisek WhatsApp, Messenger itp działają głównie w oparciu o push notyfikacje - to system operacyjny odbiera push notyfikację, a potem odpala proces komunikatora.
Kiedyś na androidzie była możliwość automatycznego (bez udziału użytkownika) odpalenia odpowiedniej usługi przez push notyfikację, ale chyba obecnie proces jest odpalany tylko gdy użytkownik wybierze notyfikację z "szuflady powiadomień".