我有以下要求,我需要您宝贵的建议和解决方案 .

要求:

每当我从一个特定号码接听电话时,我需要进行API调用并获取一些信息,并且需要将其与来电显示一起显示为标签文本 .

请建议是否可以达到要求,如果是,请指导我解决方案 .

我遵循以下步骤:

  • 创建了CallDirectoryExtension并添加了带有一些标签的特定数字 .

  • 打开呼叫识别和阻止

  • 每当我打电话[App Name]被叫ID:[Label]显示而不是Unknown .

  • 要识别来电,我正在使用CXCallObserver和public func callObserver(_ callObserver:CXCallObserver,callChanged call:CXCall)方法 .

  • 调用所需的API并将数据保存在应用程序组下的Userdefaults中 .

  • 调用CXCallDirectoryManager.sharedInstance .reloadExtension(withIdentifier:"com.example.Sample.SampleDirectory")重新执行CXCallDirectoryProvider的方法覆盖func beginRequest(带上下文:CXCallDirectoryExtensionContext)context.addIdentificationEntry(withNextSequentialPhoneNumber:phoneNumber,label:label)将通过获取新的更改标签来执行应用组使用默认值 .

  • 但是在调用者屏幕中标签没有得到更新 .

请拨打电话,建议我如何更改标签(调用API并获取一些详细信息,我将其设置为更新的标签) .