通过单击通知(待处理意图)启动活动时丢失的附加功能



我有接收推送通知的应用程序。这些推送通知包含有效负载。收到此通知时,我会解析这些有效负载并将其作为Bundle添加到packageIntent

Intent packageIntent = context.getPackageManager().
getLaunchIntentForPackage(Constants.PUSH_PACKAGE_NAME);
// putting bundle
packageIntent.putExtras(extras);
packageIntent.setAction(Long.toString(System.currentTimeMillis()));
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, packageIntent,
PendingIntent.FLAG_UPDATE_CURRENT);

最后,我将PendingIntent作为"内容意图"添加到Notification

builder.setContentIntent(pendingIntent);

但是当我单击收到的Notification时,打开的ActivitygetIntent().getExtras()上有一个空Bundle.为什么会丢失?

尝试使用PendingIntent.FLAG_ONE_SHOT代替PendingIntent. FLAG_UPDATE_CURRENT还要检查AndroidManifest.xml文件中应用程序标记内的android:allowBackup="true"

最新更新