NotificationCompat.Builder 构造函数不可用
NotificationCompat.Builder constructor not available
我有一个用例,在 Intent
通过 BroadcastReceiver
收到 Notification
后,我需要修改它。通过文档 here 查看 NotificationCompat.Builder
列出了这个构造函数:
Builder(@NonNull context: Context, @NonNull notification: Notification)
加上描述:
Creates a NotificationCompat.Builder which can be used to build a
notification that is equivalent to the given one, such that updates
can be made to an existing notification with the
NotitifactionCompat.Builder API.
但是,当我尝试使用此构造函数时无法识别它,也没有在实际源代码中列出。我升级了我的目标和编译的 sdk 版本到 30 没有运气(我的最低是 21)。这是否意味着它很有可能在未来发生变化?
有没有其他方法可以将 Notification
克隆到 Builder
对象中进行修改?
根本原因
NotificationCompat.Builder(Context, Notification) 构造函数可从 Android AppCompat Library 1.3.0-alpha02 获得,看来您使用的是旧版本,这就是为什么您不能从代码中使用它的原因。
解决方案
第 1 步。将 Android AppCompat 库更新到 1.3.0-alpha02 版本。
implementation 'androidx.appcompat:appcompat:1.3.0-alpha02'
第 2 步。使用 Kotlin class
val notification = NotificationCompat.Builder(this, existingNotification)
我有一个用例,在 Intent
通过 BroadcastReceiver
收到 Notification
后,我需要修改它。通过文档 here 查看 NotificationCompat.Builder
列出了这个构造函数:
Builder(@NonNull context: Context, @NonNull notification: Notification)
加上描述:
Creates a NotificationCompat.Builder which can be used to build a notification that is equivalent to the given one, such that updates can be made to an existing notification with the NotitifactionCompat.Builder API.
但是,当我尝试使用此构造函数时无法识别它,也没有在实际源代码中列出。我升级了我的目标和编译的 sdk 版本到 30 没有运气(我的最低是 21)。这是否意味着它很有可能在未来发生变化?
有没有其他方法可以将 Notification
克隆到 Builder
对象中进行修改?
根本原因
NotificationCompat.Builder(Context, Notification) 构造函数可从 Android AppCompat Library 1.3.0-alpha02 获得,看来您使用的是旧版本,这就是为什么您不能从代码中使用它的原因。
解决方案
第 1 步。将 Android AppCompat 库更新到 1.3.0-alpha02 版本。
implementation 'androidx.appcompat:appcompat:1.3.0-alpha02'
第 2 步。使用 Kotlin class
val notification = NotificationCompat.Builder(this, existingNotification)