我有一些短信应用程序。因此,每当手机收到新消息时,它都会收到通知,点击后会启动该活动。现在,当收到1条消息时,它会通知,删除状态栏并且不会启动活动。但是当收到2条或更多条消息时,第一个通知在点击时无法启动,而其余通知(第2,第3通知......)可以。以下是我的代码。
Intent newIntent = new Intent(context, PreviewActivity.class);
newIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK+0);
newIntent.setAction(strFxPrimaryKey);
Bundle newBundle = intent.getExtras();
newBundle.putInt(GlobalConstants.PRIMARY_ID, Integer.parseInt(strFxPrimaryKey));
newIntent.putExtras(newBundle);
int icon = R.drawable.notification_fx;
CharSequence tickerText = context.getString(R.string.fx_received);
long when = System.currentTimeMillis();
Notification newNotification = new Notification(icon, tickerText, when);
newNotification.flags |= Notification.FLAG_AUTO_CANCEL; //| Notification.FLAG_ONGOING_EVENT;
PendingIntent contentIntent = PendingIntent.getActivity(context, Integer.parseInt(strFxPrimaryKey), newIntent, 0);
newNotification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
String newNotificationService = Context.NOTIFICATION_SERVICE;
NotificationManager newNotificationManager = (NotificationManager) context.getSystemService(newNotificationService);
newNotificationManager.notify(Integer.parseInt(strFxPrimaryKey), newNotification);
context.startActivity(newIntent);
context.removeStickyBroadcast(intent);
根据stackoverflow中的答案,要创建一个唯一的意图,它应该有唯一的动作,这就是我将主键设置为动作的原因。我还将请求代码设置为主键以具有唯一的待定意图。我的代码中是否缺少某些内容?谢谢。
EDITED 顺便说一下,每当我删除 context.startActivity(newIntent); 时,它都能正常工作。谁能告诉我为什么?感谢。