4

特定の時点でAlarmManagerを使用してBroadcastReceiverを呼び出すアクティビティがあります。BroadcastReceiverを呼び出すときにインテントに文字列を追加しようとすると、もう一方の端では常にnullとして表示されることを除いて、これはすべて正常に機能します。

アクティビティコード:

    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'の内容は常にnullBroadcastReceiverにありますが、何が間違っていますか?

4

1 に答える 1

7

でそれを取得してみてください:

intent.getExtras().get("testString");
于 2010-06-26T18:32:31.457 に答える