小编Pav*_*hov的帖子

堆叠通知不起作用

我需要组成一组通知.我在这里做了示例输入链接描述

但我的通知没有分组.我做错了什么?

我的代码:

private static int id =0;
    final static String GROUP_KEY_GUEST = "group_key_guest";


     private static void generateNotification(Context context, String message) {

            NotificationManagerCompat notificationManager = NotificationManagerCompat.from(context);

            Intent intent = new Intent(context,MyActivity.class);
            PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);

            Notification notification   = new NotificationCompat.Builder(context)
                    .setContentIntent(pendingIntent)
                    .setSmallIcon(R.drawable.ic_stat_gcm)
                    .setLargeIcon(BitmapFactory.decodeResource(context.getResources(), R.drawable.ic_stat_gcm))
                    .setTicker("New Message")
                    .setWhen(System.currentTimeMillis())
                    .setAutoCancel(true)
                    .setContentTitle("Message")
                    .setContentText(message)
                    .setGroup(GROUP_KEY_GUEST)
                    .build();

            notificationManager.notify(id++, notification);
        }
Run Code Online (Sandbox Code Playgroud)

方法调用:

 @Override
    protected void onMessage(Context context, Intent intent) {
        Log.d(TAG, "????????? ?????????: " + intent.getExtras());
        String message = intent.getStringExtra("content"); …
Run Code Online (Sandbox Code Playgroud)

android android-notifications

8
推荐指数
2
解决办法
4437
查看次数

通知将被相互覆盖

我发送不同的通知.但是当你点击其中任何一个时,我都会得到已经发送到最后一个通知的数据.怎么解决?我需要注意每个商店的数据,并且新的通知不会取代PendingIntent.FLAG_UPDATE_CURRENT它们.我使用了一个标志, 但我也使用了左边所有的标志.

private void generateNotification(Context context, String title, String message,int groupid,Intent data) {

        NotificationManagerCompat notificationManager = NotificationManagerCompat.from(context);
        Intent intent = new Intent(context,MyActivity.class);
        intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP
                | Intent.FLAG_ACTIVITY_SINGLE_TOP);

        if (groupid==1){
            intent.putExtra("guest",data.getStringExtra("guest"));
            intent.putExtra("hotel",data.getStringExtra("hotel"));
            intent.putExtra("room",data.getStringExtra("room"));
        }
        if (groupid==5){
            intent.putExtra("hotel",data.getStringExtra("hotel"));
        }
        if (groupid==4){
            intent.putExtra("hotel",data.getStringExtra("hotel"));
            intent.putExtra("guest",data.getStringExtra("guest"));
        }

        intent.putExtra("group_id",groupid);
        Log.d("mylogout","group_id: "+groupid);
        PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);

        Notification notification   = new NotificationCompat.Builder(context)
                .setContentIntent(pendingIntent)
                .setSmallIcon(R.drawable.ic_stat_gcm)
                .setLargeIcon(BitmapFactory.decodeResource(context.getResources(), R.drawable.ic_stat_gcm))
                .setTicker("????? ?????????")
                .setWhen(System.currentTimeMillis())
                .setAutoCancel(true)
                .setContentTitle(title)
                .setContentText(message)
                .build();
        notificationManager.notify(ID_NITIF++, notification);
    }
Run Code Online (Sandbox Code Playgroud)

android android-intent android-notifications android-notification-bar

4
推荐指数
1
解决办法
1515
查看次数