[英]IOS decline incoming call programmatically?
Is there any way decline a incoming call programmatically in swift. 是否有任何方式在swift中以编程方式拒绝来电。 My code like this: 我的代码是这样的:
self.callCenter.callEventHandler = {(_ call: CTCall) -> Void in
if call.callState == CTCallStateDisconnected {
print("Call has been disconnected")
}
else if call.callState == CTCallStateConnected {
print("Call has just been connected")
}
else if call.callState == CTCallStateIncoming {
print("Call is incoming")
}
else {
print("None of the conditions")
}
I am detect incoming call state this way. 我通过这种方式检测来电状态。 But i don't know how can i change callstate
of CTCAll
. 但我不知道如何更改callstate
的CTCAll
。 Please help me !. 请帮我 !。
#import <CoreTelephony/CTCall.h>
#import <CoreTelephony/CTCallCenter.h>
#import <CoreTelephony/CTCarrier.h>
#import <CoreTelephony/CTTelephonyNetworkInfo.h>
@interface MMCallNotificationManager()
@property (nonatomic, strong) CTCallCenter *callCenter;
@property (nonatomic) BOOL callWasStarted;
@end
@implementation MMCallNotificationManager
- (instancetype)init
{
self = [super init];
if (self) {
self.callCenter = [[CTCallCenter alloc] init];
self.callWasStarted = NO;
__weak __typeof__(self) weakSelf = self;
[self.callCenter setCallEventHandler:^(CTCall *call) {
if ([[call callState] isEqual:CTCallStateIncoming] ||
[[call callState] isEqual:CTCallStateDialing]) {
if (weakSelf.callWasStarted == NO) {
weakSelf.callWasStarted = YES;
NSLog(@"Call was started.");
}
} else if ([[call callState] isEqual:CTCallStateDisconnected]) {
if (weakSelf.callWasStarted == YES)
{
weakSelf.callWasStarted = NO;
NSLog(@"Call was ended.");
}
}
}];
}
return self;
}
@end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.