如何使用callkit获取来电号码

时间:2016-06-29 11:18:08

标签: ios ios10 callkit

如何使用call kit框架以编程方式获取来电号码。我尝试使用cxcallobserver类但没有用。

任何有用的建议......

2 个答案:

答案 0 :(得分:9)

使用CallKit的Call Blocking&识别功能(iOS 10中的新功能),要阻止或识别的电话号码在来电之前由应用程序的呼叫目录分机加载,并且电话号码由系统存储。然后,当来电到达时,系统会查询此存储的数据,并且可以在提供标签的来电UI中阻止或识别来电。

出于隐私和性能原因,当来电到达且应用扩展程序无法检索来电的电话号码时,系统不会启动通话目录应用扩展程序。

答案 1 :(得分:1)

iOS 10中引入的呼叫目录扩展类似于iOS 9中引入的Safari内容阻止程序扩展。您的扩展程序必须提供电话号码列表(在safari的扩展名中,它是一个json文件) ,这些号码将由iOS存储,并且在传入呼叫的​​情况下,系统会检查您的分机提供的列表(类似于safari将在加载网站之前检查json文件指定的规则),提供,扩展在那时是活跃的。

因此,使用此功能创建类似应用的来电显示是不可能的,因为事情不是动态的。 此外,您可以在列表中提供的电话号码数量也有限制,有望在iOS 10发布时公布。