Android при передаче данных из Activity в BroadcastReceiver показывает нулевое значение - PullRequest
4 голосов
/ 26 июня 2010

У меня есть действие, которое использует AlarmManager для вызова BroadcastReceiver в определенный момент времени. Это все работает нормально, за исключением случаев, когда я пытаюсь добавить некоторые дополнительные строки в намерение при вызове BroadcastReceiver, они всегда отображаются как нулевые на другом конце.

Код активности:

    Intent intent = new Intent(this, ScheduleReceiver.class);
    intent.putExtra("testString", "I'm a string");
    PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 999, intent, 0);

    AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
    alarmManager.set(AlarmManager.RTC, System.currentTimeMillis(), pendingIntent);

BroadcastReceiver код

 public void onReceive(Context context, Intent intent) {
      Log.v(TAG, "TestString: " + intent.getStringExtra("testString"));
 }

Содержимое 'teststring' всегда в * Broad9Receiver *, что я делаю неправильно?

1 Ответ

7 голосов
/ 26 июня 2010

Попробуйте получить с:

intent.getExtras().get("testString");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...