我已经实现了一个简单的私有通知,因此,如果用户具有锁定屏幕的安全性(密码,模式,指纹),它将不会在锁定屏幕上显示其内容。 一切运行良好,但出于某种原因,Android无缘无故地在通知中添加了额外的填充或高度。
我在下图中生成的通知是第一个。
左侧是它的外观。它没有setPublicVersion
,只有可见性设置为私有。
右侧显示的是尺寸不正确的显示方式。通过setPublicVersion
设置。
以下是用于在左图中创建通知的代码:
new NotificationCompat
.Builder(context, NOTIFICATION_CHANNEL_ID)
.setVisibility(NotificationCompat.VISIBILITY_PRIVATE)
.setSmallIcon(drawable);
以下是用于在右图中创建通知的代码:
new NotificationCompat
.Builder(context, NOTIFICATION_CHANNEL_ID)
.setVisibility(NotificationCompat.VISIBILITY_PRIVATE)
.setSmallIcon(drawable)
.setPublicVersion(new NotificationCompat
.Builder(context, NOTIFICATION_CHANNEL_ID)
.setSubText("1 unread message")
.setSmallIcon(drawable)
.build()
);
我还尝试不将其设置为子文本,也不将公共通知可见性设置为公共。没有变化。
Android 8和Android 9中存在此问题。 我究竟做错了什么?还有其他遗漏的东西吗?还是这是Android的错误?