Android 12 呼入/呼出通知和突出的芯片

Posted

技术标签:

【中文标题】Android 12 呼入/呼出通知和突出的芯片【英文标题】:Android 12 In/out-call notification and prominent chip 【发布时间】:2021-12-20 15:52:30 【问题描述】:

根据 android 12 文档,有一个特殊的呼入/呼出通知将显示所谓的“突出芯片”。

看起来是这样的:

我尝试使用 Android 示例中的代码:

// Create a new call with the user as caller.
Person incoming_caller = new Person.Builder()
    .setName("Jane Doe")
    .setImportant(true)
    .build();
    
Notification.Builder builder = Notification.Builder(context, CHANNEL_ID)
        .setContentIntent(contentIntent)
        .setSmallIcon(smallIcon)
        .setStyle(
            Notification.CallStyle.forIncomingCall(caller, declineIntent, answerIntent))
        .addPerson(incoming_caller);

在我的应用程序中使用NotificationCompatNotificationCompat.Builder 但是这一行Notification.CallStyle.forIncomingCall 是指非Compat 版本,所以我不能将forIncomingCall 的逻辑用于我现有的通知。

【问题讨论】:

【参考方案1】:

AndroidX 中的 NotificationCompat 类尚未更新以包含此新样式 - 您可以在 https://cs.android.com 上搜索 NotificationCompat 以检查文件的最新版本,然后您将不得不等待androidx.core:core 库的新版本。

同时,如果你想使用新的调用方式,你必须使用平台Notification类型:

if (Build.VERSION.SDK_INT >= 31) 
  // Use Notification with Notification.CallStyle
 else 
  // use NotificationCompat

【讨论】:

以上是关于Android 12 呼入/呼出通知和突出的芯片的主要内容,如果未能解决你的问题,请参考以下文章

Lync 项目经验-40-Skype for Business-呼入正常-呼出不正常

如何在 ios phone phonegap 编程中处理呼出和呼入的应用程序?

4G通讯模块为何要设Apn

更优雅地使用命令行

GSM语音通话问题分析

GSM语音通话问题分析