Próbuję przekazać wartość int z mojej usługi do klasy CallReceiver, niestety wartość CallReceiver.value zawsze wynosi 0, nawet po ustawieniu z inną wartością. Kiedy próbuję przekazać go jako parametr do konstruktora sytuacja jest dokładnie taka sama, a więc z metodami ustawiającymi wywołanymi z usługi. Czy naprawdę nie ma sposobu, aby przekazać tam jakiekolwiek dane?Przekazywanie parametrów do BroadcastReceiver
Usługa:
SharedPreferences settings = getSharedPreferences("SETTINGS", 0);
int value = settings.getInt("value1", 0); // here the correct value is present, not 0.
CallReceiver mCallReceiver = new CallReceiver();
CallReceiver.value = value;
Odbiornik:
public class CallReceiver extends BroadcastReceiver {
public int value;
public CallReceiver(int value) {
this.value = value;
}
public CallReceiver() {
}
@Override
public void onReceive(Context context, Intent intent) {
Log.v("value", String.valueOf(value)); // here "value" = 0.
}
}
swojej dziedzinie 'value' w' CallReceiver' nie jest statyczna, nie znaczy 'mCallReceiver.value = wartość;' zamiast 'CallReceiver.value = value;'? –