当从Firebase中的查询中创建不同的通知时,我无法精确提取标题

问题描述:

我可以在Firebase聊天应用程序中的循环内部创建来自不同用户的不同通知(即在消息不断更新时正确更新当前通知)。当从Firebase中的查询中创建不同的通知时,我无法精确提取标题

但是,由于通知的创建是在循环内部,所以打开活动的意图的put.extra方法总是取最后一个参数。所以我不能从第一个通知中去所需的位置。 我认为更好的方法是准确获取通知区域中存在的通知的标题。这将完全符合我的需求!

我可以这样做吗?尽管在通知区域中创建和订购的顺序,我是否可以准确获得任何通知的标题并将其传递给下一个活动?

预先感谢

问题解决了不同的方法。我通过输入在resultIntent一些虚拟行动succeded:

resultIntent.setAction(Long.toString(System.currentTimeMillis的()));

我不再需要获取通知的标题!

下面是代码里面一个for循环生成的intent.Remember整个代码...

String tagStringForNotification = usermessageOfLast.getName(); 

            NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); 

            NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(MainActivity.this) 
              .setSmallIcon(R.drawable.ic_launcher) 
              .setContentTitle(usermessageOfLast.getName() +"\t" + "said:") 
              .setContentText(usermessageOfLast.getText()) 
              .setOnlyAlertOnce(true) 
              .setSound(RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION)); 
            mBuilder.setAutoCancel(true); 
            mBuilder.setLocalOnly(false); 

            Intent resultIntent = new Intent(MainActivity.this, UserToUserMessageNotification.class); 
            resultIntent.putExtra("chatsWith", tagStringForNotification); 

            resultIntent.setAction(Long.toString(System.currentTimeMillis())); 


            //flag to upddate current or create new one 
            PendingIntent resultPendingIntent = PendingIntent.getActivity(MainActivity.this, 0, resultIntent, PendingIntent.FLAG_UPDATE_CURRENT); 

            //building the notification 
            mBuilder.setContentIntent(resultPendingIntent); 

            mNotificationManager.notify(tagStringForNotification, notifyID, mBuilder.build());