我正在使用"telprompt"通过我的应用程序进行调用,但是当调用结束时,我希望显示一个新的视图控制器并点击API以获取数据,所以我想接收一个事件来打开弹出窗口并点击API。
我尝试使用CallKit,但委托方法未被调用。
这是我的代码。
#import <CallKit/CXCallObserver.h>
#import <CallKit/CXCall.h>
我符合 CXCallObserverDelegate
在视图中DidLoad:
CXCallObserver *callObserver = [[CXCallObserver alloc] init];
[callObserver setDelegate:self queue:nil];
委托方法:
- (void)callObserver:(CXCallObserver *)callObserver callChanged:(CXCall *)call {
if (call.hasConnected) {
NSLog(@"********** voice call connected **********/n");
} else if(call.hasEnded) {
NSLog(@"********** voice call disconnected **********/n");
}
}
上面的方法没有被调用,如您所见,我已经设置了委托,我不知道我做错了什么。
在为我的控制器创建强引用/属性后,我缺少对 callObserver 对象的强引用,它运行良好。
添加属性并将 callObserver 对象放入其中。
@property (nonatomic, strong) CXCallObserver *callObserver;
viewDidLoad:
CXCallObserver *callObserver = [[CXCallObserver alloc] init];
[callObserver setDelegate:self queue:nil];
_callObserver = callObserver;
现在将调用委托方法。
干杯!!!