Sto scrivendo un'app che rileva l'audio dal jack delle cuffie e trasmette Intenti quando vengono soddisfatte determinate condizioni audio (in particolare quando rileva la lettura di una tessera sfiorata da un dispositivo audio ausiliario) .Come mantenere attivo un servizio a tempo indeterminato
La mia app non ha attività, è solo un'applicazione e un servizio.
Tutto funziona bene tranne che il servizio viene ripulito da Android dopo un periodo di tempo relativamente breve (~ un minuto).
Sono curioso di sapere cosa devo fare per dire ad Android che questo è un servizio utile e che dovrebbe lasciarlo da solo a meno che non abbia davvero bisogno della sua memoria. Mi rendo conto che posso creare un allarme che si attiva ogni due secondi e attiva il servizio se nota che non è lì, ma sembra un kluge. C'è un modo più Android (y) per mantenerlo vivo rispetto a quello?
Ehi Marco. Grazie per l'aiuto. Come con (quasi) tutte le app che scrivo è un'app kiosk personalizzata che non lascia all'utente molto spazio per fare qualsiasi cosa. Il chiosco è perennemente in "primo piano" e il servizio consegna le carte su di esso (via broadcast). C'è una buona ragione (che ometterò) perché questo deve essere eseguito come app separata, anziché essere inserito direttamente nel Kiosk. Quindi, sono felice di avere l'attività che attiva tutto e io sto bene con il primo piano. Il chiosco in cima interferisce in primo piano con il primo piano? –
@ Dr.Dredel: "Il chiosco in cima interferisce in primo piano con il primo piano?" - No, non dovrebbe essere un problema. Se hai mai usato un lettore musicale su un dispositivo Android e hai visto che ha inserito un 'Notification' nella barra di stato durante la riproduzione, questo perché la riproduzione è gestita da un servizio in primo piano. Questo, o brevemente durante una transazione (ad esempio, ricorda il download degli aggiornamenti di Milk in base a un messaggio GCM), è il tipico caso d'uso per un servizio in primo piano. – CommonsWare
sì, questo ha perfettamente senso. grazie ancora. –