Sono perplesso perché non riesco ad accedere alle mie variabili globali dal mio servizio. Io possa accedere da altre attività proprio bene ....Variabile globale Android non funzionante nel servizio
globale classe var:
public class Global extends Application {
private static final String TAG = "Global Class";
int test;
public int getTest()
{
return test;
}
Main Activity io uso questo codice di prova:
Global appState = ((Global)getApplication()); //Context());
appState.setTest(555);
Log.e("SETTEST",new Integer(appState.getTest()).toString());
Il risultato è 555
Un'altra attività uso lo stesso codice:
Global appState = ((Global)getApplication()); //Context());
Log.e("SETTEST",new Integer(appState.getTest()).toString());
Il risultato è 555
infine, nel mio servizio, io uso lo stesso codice come sopra:
Global appState = ((Global)getApplication()); //Context());
Log.e("SETTEST",new Integer(appState.getTest()).toString());
e ottengo grosso, grasso 0 indietro.
Per favore aiuto. Ho trascorso 3 ore su questo finora. Ho provato con getApplication, e getApplicationContext
Inoltre, sembra manifestano come questo:
...
<application android:icon="@drawable/signal" android:label="@string/app_ name" android:name="<absolute path>.util.Global">
<service
android:name=".util.MyService"
android:process=":MyService"
android:icon="@drawable/airplane"
android:label="@string/service_name"
>
</service>
** Ho appena provato ad utilizzare una classe Singleton e in base a questo post. stessi problemi come sopra:
Provare a passarli utilizzando le preferenze condivise .. Spero che funzionerà. –
Il servizio è in esecuzione in locale o remoto? Pubblica il manifest per il tuo servizio –
questo era solo un semplice codice di test. sto passando una vasta gamma di oggetti personalizzati ... non sono sicuro se i prefs condivisi sono la strada da percorrere-correggimi se ho torto –