Come tutti potrebbe sapere, ci sono due tipi principali di servizi in Android: iniziato e vincolati (servizi non sto partito il conteggio e legato, in quanto sono in gran parte gli stessi servizi appena iniziato).Perché utilizzare i servizi associati (non avviati) all'interno del processo di applicazione?
È possibile trovare tonnellate di tutorial su come utilizzare i servizi associati o su come collegarsi al servizio avviato, ma in realtà non esiste una risposta sul motivo per cui qualcuno dovrebbe utilizzare i servizi associati (non avviati) all'interno del processo di applicazione (in altre parole - senza IPC)?
Esiste un profitto (nascosto?) Dall'utilizzo del servizio associato (diciamo per una sorta di elaborazione) rispetto all'utilizzo di strumenti di threading standard (AsyncTak, Executor, thread semplici)? Ne varrebbe la pena il codice per la connessione di tale servizio?
Alcuni contesto
domanda è apparso dopo aver scavato attraverso fonti di Camera di Google. Stanno creando un servizio vincolato (ancora una volta non avviato) per il salvataggio delle immagini. Qual è il punto? Perché non solo usato un po 'di Executor
? Mi sto perdendo qualcosa di importante?
Se questo è un servizio legato, allora non c'è modo sarebbe utile persistere progresso risparmio mentre configurazione del dispositivo cambia (cioè dispositivo viene ruotato). Quindi non vedo alcun vantaggio.
intendi servizi locali legati? – pskink
guardare in [questa] (http://stackoverflow.com/questions/9272217/service-or-bound-service) o [questo post] (http: // StackOverflow.it/questions/16162002/bound-service-versus-started-service-on-android-and-how-to-do) –
@SagarPilkhwal il primo collegamento è un po 'più vicino alla risposta, ma ancora non descrive il perché dovresti usare questo servizio in primo luogo. Perché invece non lanciare alcuni 'HandlerThread'? Secondo link appena uscito dall'argomento in quanto descrive i servizi associati ** e ** avviati. –