Autore Topic: SharedPreferences da BroadcastReceiver  (Letto 368 volte)

Offline stefano77

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy tab 2
  • Sistema operativo:
    Ubuntu 12.10
SharedPreferences da BroadcastReceiver
« il: 15 Settembre 2013, 19:37:26 CEST »
0
Salve, Ho fatto un app che ha una UI dove imposto dei valori tramite
Codice (Java): [Seleziona]
SharedPreferencesprefs = getSharedPreferences(PREFERENCE,2); oppure
Codice (Java): [Seleziona]
public SharedPreferences getPreferences(int mode) ma presuppongo che il primo metodo sia il migliore per condividerlo con altre activity.
Il problema è che non riesco in nessun modo a leggere (il file precedentemente scritto dall'Activity) da un BroadcastReceiver facente parte dello stesso progetto.
Il problema vero e proprio è che nel BroadcastReceiver non sono implementati i metodi sopra scritti, e, non riesco a ricevere la SharedPreferences in nessun modo.
Come posso fare?

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:SharedPreferences da BroadcastReceiver
« Risposta #1 il: 15 Settembre 2013, 20:42:35 CEST »
+1
Il metodo getSharedPreferences è della classe Context e come avrai notato nel metodo onReceive te ne viene passata un'instanza:

Codice (Java): [Seleziona]
public void onReceive (Context context, Intent intent){
   
    SharedPreferences prefs = context.getSharedPreferences(PREFERENCE,2);
    //...
}

Offline stefano77

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Galaxy tab 2
  • Sistema operativo:
    Ubuntu 12.10
Re:SharedPreferences da BroadcastReceiver
« Risposta #2 il: 15 Settembre 2013, 20:48:57 CEST »
0
Ciao Ricky ci avevo pensato, ma il context che ricevo nel metodo onReceive non appartiene all'applicazione che lo richiama?

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:SharedPreferences da BroadcastReceiver
« Risposta #3 il: 15 Settembre 2013, 22:14:26 CEST »
+1
Ovviamente no, appartiene alla tua :)

Inviato dal mio Galaxy Nexus con Tapatalk 2