gpt4 book ai didi

java - ConnectionService TelecomManager 未正确显示在调用历史记录中

转载 作者:行者123 更新时间:2023-12-02 12:12:30 24 4
gpt4 key购买 nike

我使用如下所示的 addnewIncomingCall 来显示来电 ui 屏幕

Bundle callInfo = new Bundle();
tm.addNewIncomingCall(handle, callInfo);

我也用

connection.setAddress(Uri.parse("David561"), TelecomManager.PRESENTATION_ALLOWED);

更改来电显示

enter image description here

问题是,当我在实际手机(而非应用程序)上检查通话记录时,我看到的是 561 而不是 David561,如下所示:

enter image description here

我什至尝试打电话

connection.setCallerDisplayName("David561",TelecomManager.PRESENTATION_ALLOWED);

没有任何运气。它会去掉字母并只保留数字。我尝试为电话号码 561 创建联系人并将名称设置为 David,它实际上在通话记录中显示为 David。但我不希望用户必须创建联系人。我想要实现的目标可能吗?如果没有,也没关系。我只是想确认使用 TelecomManager 和 ConnectionService 无法让姓名显示在通话历史记录中。

最佳答案

不确定自从提出这个问题以来它是否发生了很大变化,但通过测试我发现

connection.setAddress()

应包含电话系统用于回拨调用者的用户的电话号码/地址,并且

connection.setCallerDisplayName

应包含将显示在通话记录中的联系人的显示名称。

即下面的代码将导致“Dave”显示在通话记录中,并且他的联系号码将填充为“+1 123 1234 12345”。

connection.setAddress("+1 123 1234 12345")
connection.setCallerDisplayName("Dave")

注意:地址和 CallerDisplayName 都需要在联系人中设置,否则在通话记录信息和收到来电时,该联系人将显示为“未知”。

关于java - ConnectionService TelecomManager 未正确显示在调用历史记录中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46390916/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com