是否可以在iOS 11中创建白名单呼叫阻止应用?
例如,我想阻止除联系人列表中的号码以外的所有号码。
看起来api只允许你创建一个要阻止的数字列表,而不是一个允许的数字列表。
答案 0 :(得分:1)
是的,您只能阻止特定的列表,没有权限进行大小写反转。这违反了苹果的政策。不确定是否可以使用私有api,否则不能通过公共/法律方式来做到这一点。
这是来自Apple文档的文本:
电话收到来电时,系统首先会查询用户的阻止列表,以确定是否应阻止呼叫。如果电话号码不在用户或系统定义的阻止列表中,则系统将查询您应用的“呼叫目录”分机以找到匹配的阻止号码。
上面的文字清楚地表明,在接到呼叫时,它仅查询您的列表以检查阻止列表,而无法使用大小写反转。
即使您可以删除其他应用添加的被阻止的联系人,您也只能访问由应用的呼叫目录扩展添加的被阻止的号码。
因此,如果您想屏蔽除某些列表以外的所有数字,那么在iOS中是不可能的。
答案 1 :(得分:1)
您无法使用CallKit实现此目的,但是有一种(很多更复杂的)方式可以拒绝来电并通过外部蓝牙设备完全完成您想要的操作-例如{{3 }}(产品不再销售,但您会在网络上找到一些其他不错的板子。)
诀窍是将您的应用与实现prototyping board配置文件的蓝牙设备配对。此配置文件将使您的设备能够应答传入的通知和呼叫...看到它了吗?您可以想象这就像一个简约的iWatch,从那里您可以接听或拒绝电话以及任何通知。如果您的应用已连接并且可以与设备通信,则它将能够发送命令以要求您取消通话。
因此,最后它将按原样工作:
当然,这与您提出此问题时的预期相去甚远,但是值得一提的是,这是当今唯一可行(且经过测试!)的解决方案。