小编use*_*353的帖子

如何以编程方式检测呼入

我需要我的应用程序在有呼叫时发送通知(来电,已连接,呼叫结束)我已通过通知注册了我的viewController.

 [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callReceived:) name:CTCallStateIncoming object:nil];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callEnded:) name:CTCallStateDisconnected object:nil];
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(callConnected:) name:CTCallStateConnected object:nil];
Run Code Online (Sandbox Code Playgroud)

我还提出了一种检查呼叫状态的方法

-(IBAction)checkForCall:(id)sender{
    NSLog(@"call state %@ id %@",call.callState,call.callID);
    CTCallCenter *callCenter = [[CTCallCenter alloc] init];
    callCenter.callEventHandler = ^(CTCall* call){
        if (call.callState == CTCallStateDisconnected)
        {
            NSLog(@"Call has been disconnected");

        }
        else if (call.callState == CTCallStateConnected)
        {
            NSLog(@"Call has just been connected");

        }
        else if(call.callState == CTCallStateIncoming)
        {
            NSLog(@"Call is incoming");

        }
        else
        {
            NSLog(@"None of the conditions");
        }
    };
}
Run Code Online (Sandbox Code Playgroud)

但这一切都不起作用.请帮我.

哪里出错了?是否有任何代码告诉如何使用核心电话?

iphone cocoa ios core-telephony

12
推荐指数
3
解决办法
1万
查看次数

标签 统计

cocoa ×1

core-telephony ×1

ios ×1

iphone ×1