Android MediaStyle NotificationCompat 最多显示 3 个操作

Android MediaStyle NotificationCompat displays 3 actions maximum

我的 NotificationCompat.Builder 设置为 MediaStyle 时遇到 2 个问题:

1) 我设置了5个动作,展开后的通知中只显示了3个。 (显示的前 3 个操作正常)。

2) None 虽然我设置了 1 个操作,但紧凑通知中显示了操作。

我正在 Lollipop 5.1.1 (Cyanogen) 上的三星 S4 上进行测试,我的应用程序使用支持库 23.2.1

下面是我的 NotificationCompat.Builder :

        notificationBuilder = new NotificationCompat.Builder(act)
            .setPriority(NotificationCompat.PRIORITY_HIGH)
            .setVisibility(NotificationCompat.VISIBILITY_PUBLIC)
            .setCategory(NotificationCompat.CATEGORY_TRANSPORT)
            .setContentTitle(podcastName)
            .setContentText(episodeName)
            .setOngoing(true)
            .setShowWhen(true)
            .setContentIntent(activityMainPI)
            .setSmallIcon(smallIcon)
            .setLargeIcon(largeIcon)
            .setAutoCancel(false)
            .addAction(previousAction)
            .addAction(playAction)
            .addAction(nextAction)
            .addAction(rewindAction)
            .addAction(forwardAction)
            .setStyle(new MediaStyle()
                            .setShowActionsInCompactView(new int[]{1})
            );

Eugen,请找第一个动作(其他类似):

   previousPI = PendingIntent.getBroadcast(context, 100, new Intent(TOOLS_CONST.ACTION_PREVIOUS), 0);

   previousAction = new NotificationCompat.Action.Builder(R.drawable.ic_action_previous_light, null, previousPI).build();

我找到了这个问题的原因。我使用了 v4 appcompat 支持库而不是 v7

所以替换:

import android.support.v4.app.NotificationCompat;

作者:

import android.support.v7.app.NotificationCompat;

已解决问题。

这也是我的另一个 媒体样式通知的原因。