NotificationCompat.Builder addAction in pre JellyBean Androi



我有一个带有附加操作的通知,因此用户可以通过单击主通知转到主活动,或者单击辅助(扩展)通知停止服务。这适用于后JellyBean Android(4.1+)。如何在旧系统中实现类似的功能(API 11+)?

       noti = new NotificationCompat.Builder(this)
                .setContentTitle("service")
                .setContentText("running")
                .setSmallIcon(R.drawable.ic_launcher)
                .setContentIntent(pendIntent)
                .setPriority(Notification.PRIORITY_HIGH)
                .addAction(R.drawable.ic_launcher, "Stop", pIntent)
                .build();
        startForeground(12345, noti); 

从文档中:

NotificationCompat 对象的生成器类。便于控制 在所有标志上,以及帮助构建典型的 通知布局。

在不提供扩展通知的平台版本上,方法 依赖于扩展通知不起作用。

例如,操作按钮不会出现在Android之前的平台上。 4.1. 操作按钮取决于展开的通知,这些通知仅在 Android 4.1 及更高版本中可用。

因此,应始终确保 UI 控件在 通知也可在应用的"活动"中使用,并且您 应始终在用户单击通知时启动该活动。 为此,请使用 setContentIntent() 方法。

addAction()

向此通知添加操作。操作通常由 将系统作为与通知内容相邻的按钮。 行动 按钮不会显示在 Android 4.1 之前的平台上。操作按钮 依赖于仅在 Android 中可用的扩展通知 4.1 及更高版本。要确保操作按钮的功能始终可用,请首先在活动中实现该功能 当用户单击通知时开始(请参阅 setContentIntent()),然后通过实现来增强通知 与 addAction() 具有相同的功能。

我发现本教程可能会对您有所帮助。

相关内容

最新更新