IOS开发:监听来电状态的改变。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IOS开发:监听来电状态的改变。相关的知识,希望对你有一定的参考价值。

 

 

#import <CoreTelephony/CTCallCenter.h>

#import <CoreTelephony/CTCall.h>

 

@property(nonatomic,strong)CTCallCenter *callCenter;

 

以下代码写在didFinishLaunchingWithOptions中。

必须将callCenter声明为成为变量,否则无法监听。

 

self.callCenter = [[CTCallCenter alloc] init];

    self.callCenter.callEventHandler = ^(CTCall* call) {

        if ([call.callState isEqualToString:CTCallStateDisconnected])

        {

            NSLog(@"Call has been disconnected");

        }

        else if ([call.callState isEqualToString:CTCallStateConnected])

        {

            NSLog(@"Call has just been connected");

        }

        else if([call.callState isEqualToString:CTCallStateIncoming])

        {

            NSLog(@"Call is incoming");

        }

        else if ([call.callState isEqualToString:CTCallStateDialing])

        {

            NSLog(@"call is dialing");

        }

        else  

        {  

            NSLog(@"Nothing is done");  

        }  

    };

以上是关于IOS开发:监听来电状态的改变。的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发之程序各种状态监听

ios开发之--通过通知监听textfield的输入状态,判断按钮的状态

iOS开发——Reachability和AFNetworking判断网络连接状态

iOS开发-KVO的奥秘

开发人员的 iOS6 差异 [关闭]

iOS开发--本地通知与远程通知