【问题标题】:Android passing data from Activity to BroadcastReceiver shows nullAndroid 将数据从 Activity 传递到 BroadcastReceiver 显示 null
【发布时间】:2010-06-26 18:19:40
【问题描述】:

我有一个使用 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);

广播接收者代码

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

'teststring'的内容在BroadcastReceiver中总是null,我做错了什么?

【问题讨论】:

    标签: android android-activity broadcastreceiver


    【解决方案1】:

    尝试使用:

    intent.getExtras().get("testString");
    

    【讨论】:

    • 我认为这是我在 PendingItent 中添加了 PendingIntent.FLAG_CANCEL_CURRENT 标志这一事实的结合。
    猜你喜欢
    • 2012-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多