2015-07-11 17 views
8

Moja aplikacja ma działającą w tle usługę, nawet jeśli aplikacja została zabita z menedżera zadań, ale gdy przetestowałem moją aplikację na MI (xiaomi) telefon zabija moją usługę aplikacji, gdy zamykam aplikację od menedżera zadań, a moja usługa działa dalej i działa doskonale na wszystkich urządzeniach oprócz MI, nawet jeśli zabiję moją aplikację od menedżera zadań.Jak utrzymać swoją usługę aplikacji, nawet jeśli aplikacja jest zamknięta z menedżera zadań w telefonie MI

Jak utrzymać moją usługę w tle, nawet jeśli aplikacja zostanie zabita z menedżera zadań?

+0

To zależy od Androida OS, aby podjąć decyzję o uwolnieniu zasobów. Możesz spojrzeć na 'IntentService', aby mieć bardziej zoptymalizowany sposób korzystania z usług w tle. –

+0

@JibranKhan, ale moja usługa działa na urządzeniu Ll, nawet jeśli zabiję aplikację ... ponieważ wysyłam transmisję, gdy na niszczeniu się odpala ... ale tylko w Xiaomi to nie działa ... – Edward

+0

Sam 'onDestroy()' nie ma gwarancji, że zostanie wyrzucony za każdym razem, gdy aplikacja zamyka się lub znika. Sprawdź również, czy jest coś do zrobienia z wersjami Androida w twoich 2 innych telefonach w porównaniu do Xiaomi –

Odpowiedz

5

MIUI ma wbudowaną aplikację zabezpieczającą. W aplikacji Security znajduje się sekcja "Autostart", w której użytkownik może skonfigurować, która aplikacja i która aplikacja nie może być uruchomiona przy starcie. Twoja aplikacja jest domyślnie wyłączona. Musisz włączyć swoją aplikację, a także włączyć menedżera uprawnień z sekcji uprawnień.

+11

Ale użytkownik nie zrobi tego sam, więc jest jakikolwiek inny sposób, aby to zrobić programowo bez interakcji użytkownika – Edward

+0

Zrobiłem to w MIUI 8 i usunięto aplikację z menedżera zadań i usługa w tle aplikacji została zatrzymana. ... – himCream

+0

@himCream jak to zrobiliście w sposób programistyczny. Czy możesz podzielić się tym kodem? Długo czekałem, aby rozwiązać ten problem. Z góry dziękuję. – Moorthy

3

nie można tego zrobić z kodu dopóki i nie ma api z Xiaomi, który daje dostęp do tej funkcji. Zgaduję, że menedżer automatycznego uruchamiania to aplikacja (z uprawnieniami do aplikacji systemowej, ponieważ część zmodyfikowanego xiaomi os), a więc nie jest możliwa.

Ale jeśli urządzenie jest zrootowane, można rzeczywiście wyłączyć menedżera autostartu.

Nadal WhatsApp, Facebook i wiele innych aplikacji robi to może dlatego, że mają powiązania z Xiaomi, aby być na białej liście. Ale to tylko domysły.

Powiązane problemy