6

我的应用程序中的通知栏仅显示代码中的小图标(应该如此)。但是,当“阴影”被拉下时,它会同时显示代码中的小图标,以及我在 Notification.Builder 中设置的大图标。这是我的代码:

if (Build.VERSION.SDK_INT > 10){
            notification = new Notification(R.drawable.ic_stat_mintchip,
                    "This is a test",
                    System.currentTimeMillis());
            notification.largeIcon = (((BitmapDrawable)c.getResources().getDrawable(R.drawable.ic_launcher)).getBitmap());
            notification.defaults |= Notification.DEFAULT_ALL;
            notification.number += 1;
            notification.flags |= Notification.FLAG_AUTO_CANCEL;

        } else {
            notification = new Notification(R.drawable.ic_stat_mintchip,
                    "This is a test",
                    System.currentTimeMillis());

                notification.flags |= Notification.FLAG_AUTO_CANCEL;
                notification.defaults |= Notification.DEFAULT_ALL;
                notification.number += 1;
        }
}

我不太清楚为什么会这样。有什么帮助吗?

4

3 回答 3

11

我认为这里的问题可能是您没有使用 Notificaiton.Builder 类。这是您可以做的一个小示例(尽管您必须插入自己的变量,并设置您使用的其他属性,例如振动):

Notification.Builder nb = new Notification.Builder(context)
    .setContentTitle("title")
    .setContentText("content")
    .setAutoCancel(true)
    .setLargeIcon(largeIcon)
    .setSmallIcon(R.drawable.small_icon)
    .setTicker(s.getText());
NotificationManager nm = (NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);
nm.notify(100, nb.build());
于 2012-07-01T23:25:20.693 回答
7

我在 android lollipop 中遇到的另一个问题是小图标显示在大图标旁边。要解决它 - 只是不要设置大图标!仅使用小图标设置。

于 2015-02-12T15:48:25.427 回答
0

http://developer.android.com/guide/topics/manifest/uses-sdk-element.html 如果您将 android manifest 中的最大 sdk 版本设置为 19(即 KitKat),您的应用将不再显示用于棒棒糖的通知

于 2016-03-15T15:12:18.393 回答