Moto 显示中的通知

Notifications in Moto Display

我创建了一个通知,它有效但在锁定时不显示在 Moto 显示器中。 我更改了优先级、类别等,但没有任何效果。 我想要此通知,例如消息或错过的电话: moto display

这作为服务运行:

PendingIntent pendingIntent = PendingIntent.getActivity(this, requestCode /* Request code */, intent,
                PendingIntent.FLAG_ONE_SHOT);
    NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this)
                    .setSmallIcon(R.drawable.emblem2)
                    .setLargeIcon(BitmapFactory.decodeResource(getResources(), R.mipmap.ic_help_red))
                    .setColor(getResources().getColor(R.color.colorFirst))
                    .setContentTitle(title)
                    .setContentText(location)
                    .setAutoCancel(true)
                    .setSound(defaultSoundUri)
                    .setShowWhen(true)
                    .setCategory(Notification.CATEGORY_ALARM)
                    .setLights(Color.YELLOW, 200, 200)
                    .setContentIntent(pendingIntent);

   notificationBuilder.setVibrate((sharedPreferences.getBoolean("notifications_new_message_vibrate", false) ? new long[]{0, 300, 200, 300} : new long[]{}));
            NotificationManager notificationManager =
                    (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
            notificationManager.notify(requestCode, notificationBuilder.build());

正如 Marcin 所指出的,Moto Display 不适用于通知小图标中的矢量可绘制对象。我遇到了同样的问题,更改小图标解决了问题。

令人遗憾的是,像 Moto Display 这样的好功能没有文档指出这一点。

Notification notification = new Notification.Builder(context)
    // Show controls on lock screen even when user hides sensitive content.
    .setVisibility(Notification.VISIBILITY_PUBLIC)
    .setSmallIcon(R.drawable.ic_stat_player)
    // Add media control buttons that invoke intents in your media service
    .addAction(R.drawable.ic_prev, "Previous", prevPendingIntent) // #0
    .addAction(R.drawable.ic_pause, "Pause", pausePendingIntent)  // #1
    .addAction(R.drawable.ic_next, "Next", nextPendingIntent)     // #2
    // Apply the media style template
    .setStyle(new Notification.MediaStyle()
    .setShowActionsInCompactView(1 /* #1: pause button */)
    .setMediaSession(mMediaSession.getSessionToken())
    .setContentTitle("Wonderful music")
    .setContentText("My Awesome Band")
    .setLargeIcon(albumArtBitmap)
    .build();

这在我的 Moto Z 中有效,可能只在媒体模式下有效。