【发布时间】:2015-08-06 00:12:53
【问题描述】:
当我单击状态栏中的通知时,我想打开一个活动。我在 StackOverflow 上看到了这个答案,但这些答案都不适合我。 此问题仅在 Lollipop 设备上可见,重现的最佳方法是: 1.启动应用程序。 2.后台应用程序。 3. 接收推送通知。 4.点击通知,尝试3-4个推送通知。
以下是我的代码:我还尝试了以下方法:
- 添加 Intent.ACTION_MAIN
- Intent.CATEGORY_LAUNCHER 到意图
- PendingIntent.FLAG_UPDATE_CURRENT。
- android:exported="true" 在我的 AndroidManifest.xml 中
但没有任何效果。我只在 Lollipop 设备上看到这个问题。 请注意,我间歇性地看到这个问题。这是否与意图被缓存而不被传递有关。请帮忙。
PendingIntent pendingIntent = getPendingIntent(context, payload);
Builder notificationBuilder = new NotificationCompat.Builder(context)
.setSmallIcon(R.drawable.ic_stat)
.setContentTitle(res.getString(R.string.app_name))
.setContentText(payload.getMessage())
.setTicker(payload.getMessage())
.setContentIntent(pendingIntent)
.setSound(soundUri);
private PendingIntent getPendingIntent(Context context, NotificationPayload payload) {
int requestID = (int) System.currentTimeMillis();
Intent intent = new Intent(context, DeepLinkActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setPackage(BuildConfig.APPLICATION_ID);
intent.putExtra(NotificationHelper.KEY_NOTIFICATION_PAYLOAD, payload);
return PendingIntent.getActivity(context, requestID, intent, PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_CANCEL_CURRENT);
}
【问题讨论】:
-
您是否将pendingIntent 设置为您的通知构建器?
-
我也有同样的问题.. 到目前为止没有运气
标签: android android-activity push-notification android-pendingintent