我有一个带有附加操作的通知,因此用户可以通过单击主通知转到主活动,或者单击辅助(扩展)通知停止服务。这适用于后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() 具有相同的功能。
我发现本教程可能会对您有所帮助。