2010-05-26 10 views
34

Ho seguito il Local Service example fornito da Google, ma il mio Context::bindService(...) restituisce sempre false e non è mai stato chiamato anche ServiceConnection::onServiceConnected.Android Context.bindService restituisce sempre false e l'oggetto ServiceConnection non viene mai attivato

Capisco che Context::bindService() restituisce immediatamente, ma il mio oggetto ServiceConnection non viene mai attivato.

non so se questi si applicano

  1. La mia attività è in esecuzione all'interno di un tabHost e mi chiedevo se che possono influenzare il servizio vincolano in alcun modo.
  2. Il servizio stesso potrebbe presentare un problema, ma è possibile chiamare il servizio di avvio allo stesso servizio con lo stesso Intent e funziona come previsto.

Qualcuno ha esperienza con questo? Per favore aiutatemi.

Grazie, P.S. Ho scelto Android 1.6

+0

Utilizzare 'adb logcat', DDMS o la prospettiva DDMS in Eclipse e cercare * warnings * al momento del binding. Un binding fallito di solito genera un avvertimento. – CommonsWare

risposta

61

Quindi ho finalmente capito. Si scopre che TabSpec cannot bind to activities

Utilizzando getApplicationContext(). BindService invece di bindService sul attività risolve il problema in quanto utilizza il contesto di applicazione di livello superiore.

Spero che questo aiuti qualcuno!

+0

THAKAS, ho avuto esattamente lo stesso problema :) –

+0

Felice che ti abbia aiutato! – codinguser

+0

Impressionante .... questo mi ha aiutato ... grazie amico ... –

2

Io ora questo è vecchio, ma ho avuto un problema leggermente diverso. Ho refactored il pacchetto del mio progetto. Quindi il nome cambiava dei file, ma Eclipse non aggiornava il file manifest. Così, ho riparato manualmente il file manifest e ho cambiato anche il nome del pacchetto.

+0

grazie! Argh, dimenticando di aggiornare quel manifest può guidare un uomo folle :(Vorrei che ci fosse un errore nel registro che indica questo ... – verboze

Problemi correlati