2015-07-11 13 views
8

La mia app ha un servizio in background che continua a funzionare anche se l'app viene uccisa dal task manager ma quando ho testato la mia app su MI (xiaomi) telefono uccide il mio servizio app quando chiudo l'app da task manager e il mio servizio continua a funzionare e funziona perfettamente su tutti i dispositivi tranne MI, anche se uccido la mia app dal task manager.Come mantenere il mio servizio app in esecuzione anche se l'app è chiusa dal task manager nel telefono MI

Quindi, come mantenere il mio servizio in esecuzione in background anche quando l'app viene uccisa dal task manager?

+0

Dipende da Android OS per aver preso questa decisione per liberare risorse. Puoi dare un'occhiata a 'IntentService' per avere un modo più ottimizzato di usare i servizi in background. –

+0

@JibranKhan ma il mio servizio è in esecuzione su ll dispositivo anche se uccido app ... perché sto mandando una trasmissione quando su destroy viene licenziato .. ma solo in xiaomi non funziona ... – Edward

+0

Bene 'onDestroy()' stesso non è garantito che venga licenziato ogni volta che l'app si chiude o esce. Controlla anche se c'è qualcosa a che fare con le versioni di Android nei tuoi altri 2 telefoni rispetto a Xiaomi –

risposta

5

MIUI dispone di un'app di sicurezza incorporata. Nell'app Sicurezza è presente una sezione "Autostart", in cui l'utente può configurare quale app può e quale app non può essere avviata all'avvio. La tua applicazione è disabilitata come predefinita. Devi abilitare la tua app e abilitare anche la gestione dei permessi dalla sezione dei permessi.

+11

Ma l'utente non lo farà da solo, quindi c'è un altro modo per farlo a livello di programmazione senza interazione con l'utente – Edward

+0

L'ho fatto in MIUI 8 e l'app rimossa dal task manager e il servizio in background dell'app è stato arrestato. ... – himCream

+0

@himCream come hai fatto in modo programmatico. Puoi per favore condividere il codice. Ho aspettato molto tempo per risolvere questo problema. Grazie in anticipo. – Moorthy

3

non si è in grado di farlo dal codice fino a quando, a meno che non vi sia qualche API da xiaomi che consente di accedere a tale funzionalità. Sto indovinando auto start manager è un'app (con privilegi di quella di un'app di sistema, poiché parte di xiaomi ha modificato l'OS), quindi non è possibile.

Ma se il dispositivo è rootato è possibile disabilitare il gestore autostart.

Ancora whatsapp, facebook e molte altre app che fanno questo possono essere causa di legami con Xiaomi di essere nella whitelist. Ma è solo una supposizione.

Problemi correlati