• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

如何在我的应用程序中使用呼叫目录分机来识别来电?

IOS 来源:Saurabh Jain 4次浏览

我正在致力于callKit框架,我发现通过使用呼叫目录扩展名,我们可以识别传入的电话号码。我的问题是如何在iOS应用中实现呼叫目录扩展以识别来电详细信息。我的目的C.如何在我的应用程序中使用呼叫目录分机来识别来电?

工作让许多“+ 919876xxxxx”呼叫目录扩展使用此方法添加:

- (BOOL)addIdentificationPhoneNumbersToContext:(CXCallDirectoryExtensionContext *)context { 
    // Numbers must be provided in numerically ascending order. 
    CXCallDirectoryPhoneNumber phoneNumbers[] = {+919876xxxxx}; 

    NSArray<NSString *> *labels = @[ @"Telemarketer"]; 
    NSUInteger count = (sizeof(phoneNumbers)/sizeof(CXCallDirectoryPhoneNumber)); 

    for (NSUInteger i = 0; i < count; i += 1) { 
     CXCallDirectoryPhoneNumber phoneNumber = phoneNumbers[i]; 
     NSString *label = labels[i]; 
     [context addIdentificationEntryWithNextSequentialPhoneNumber:phoneNumber label:label]; 
    } 
    return YES; 
} 

我的呼叫阻塞和识别功能在手机设置。 当我从这个号码呼叫时,它显示[应用名称]来电显示:电话推销员。

我的问题是如何知道我的应用程序中的这个数字,以便我在表格中显示此数字。

在此先感谢。


===========解决方案如下:

如果这个问题不是如何写一个呼叫目录扩展,但是如何获得一个来电号码,我认为这是问题所在,那么它是不可能的。

当有来电时,不涉及通话目录分机。它所做的只是注册号码,该号码存储在电话应用专用的内部SQL数据库中。当有来电时,呼叫目录扩展程序不会运行,因此它和您的应用程序无法识别来电号码,这与以往一样,它在iOS 10中没有更改。

在iOS 10中添加了Voip应用程序的呼叫检测功能,但如果您不是voip应用程序,仍然无法获得传入(或传出)呼叫的号码。


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)