Android 无法将 intent extras 传递给 AlarmManager

标签 android android-intent android-alarms

我以为this会解决我的问题,但事实并非如此。

我有这个代码来发送我的警报:

public void triggerAlarm() {
    AlarmManager alarmManager = (AlarmManager) getContext().getSystemService(ALARM_SERVICE);
    alarmManager = (AlarmManager) getContext().getSystemService(ALARM_SERVICE);
    Intent intent = new Intent(getContext(), AlarmReceiver.class);
    intent.putExtra("Id", nextDue.id.get() + "");
    String passed = intent.getStringExtra("Id");
    Log.d("DEBRRUG", "The extra im passing: " + passed);
    PendingIntent pendingIntent = PendingIntent.getBroadcast(getContext(), i++, intent, PendingIntent.FLAG_UPDATE_CURRENT);
    alarmManager.set(AlarmManager.RTC_WAKEUP, soonest.dueTime.get(), pendingIntent);
}

我的 DEBRRUG 语句表明传递的额外值是 8。

这是我的闹钟接收器:

@Override
    public void onReceive(Context context, Intent intent) {
        String passed = intent.getStringExtra("Id");
        Log.d("DEBRRUG", "The extra im receiving: " + passed);
    }

在这里,我的 DEBRRUG 语句表明额外的 im 接收为 NULL。

注意:可能有趣的是,我的 triggerAlarm 方法是从我的 ContentProvider 中调用的。不知道这是否有助于您更好地理解我的问题。

最佳答案

使用 intent.getExtras().getString("id")

关于Android 无法将 intent extras 传递给 AlarmManager,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45678692/

相关文章:

android - TextViews不在约束布局中移至“开始”位置

java - 如何将 Properties 对象从一个 Intent 传递到另一个 Intent ?

Android选择 Activity 文字颜色

android - 单击按钮时,应用程序被强制关闭

android - Arraylist 未正确解析

android - 在android中以编程方式启动电子邮件客户端并将电子邮件地址传递给客户端

android - 这是播放重复警报音的正确方法吗?

Android 离线可靠日期持续时间

android - 无法设置多个提醒

java - Android RuntimeException 和 NullPointerException