1

我正在创建一个 Intent 并向其添加额外的字符串,然后创建一个 PendingIntent,将其提供给警报管理器执行:

String value = "someValue";

Intent intent = new Intent(this, FetchService.class);
intent.putExtra(AppConstants.KEY, value);

alarmIntent = PendingIntent.getService(this, 0, intent, 0);

到目前为止,一切都很好,我用调试器检查了额外的设置。接下来,当在我的服务中调用 onHandleIntent(intent) 时,额外的似乎不再存在

@Override
protected void onHandleIntent(Intent intent) {
    // App crashes here
    String value = intent.getStringExtra(AppConstants.KEY);

    ...
}

我似乎无法弄清楚为什么没有额外的东西。我错过了什么吗?

谢谢。

4

1 回答 1

0

正如 Karakuri 指出的那样,在创建我的 PendingIntent 时缺少 PendingIntent.FLAG_UPDATE_CURRENT 。

于 2014-08-18T18:15:30.087 回答