CallKit:将数字添加到CXCallDirectoryProvider

时间:2018-05-24 05:10:41

标签: ios swift callkit

我想在使用我的应用程序时将数字添加到阻止列表中。

目前,我正在尝试更新阻止列表,但它无法正常工作

 let callDirectoryExtensionContext = CXCallDirectoryExtensionContext.init()
    let phoneNumbers: [CXCallDirectoryPhoneNumber] = [ xx_xxx_xxx_xxxx ]
    for phoneNumber in phoneNumbers {
        callDirectoryExtensionContext.addBlockingEntry(withNextSequentialPhoneNumber: phoneNumber)
    }


    let callDirectoryProvider = CXCallDirectoryProvider.init()
    callDirectoryProvider.beginRequest(with: callDirectoryExtensionContext)

    CXCallDirectoryManager.sharedInstance.reloadExtension(withIdentifier: "com.xxxxxxx.xxxxx.CustomCallDirectoryProvider") { (error) in
        if let error = error {
            print(error.localizedDescription)
        }
    }

是否可以使用CallKit更新或添加数字到阻止列表。

1 个答案:

答案 0 :(得分:1)

您无法在应用中随意拨打这些类型的电话。您必须通过在Xcode中创建扩展目标,实现CXCallDirectoryProvider协议以及实现beginRequest回调来实现。当iOS确定您的扩展需要加载或重新加载时,将调用此方法。

您需要阅读Apple's App Extension guide