diff --git a/ios/RNCallKit/RNCallKit.m b/ios/RNCallKit/RNCallKit.m index fb6d793..2e6b7c8 100644 --- a/ios/RNCallKit/RNCallKit.m +++ b/ios/RNCallKit/RNCallKit.m @@ -30,6 +30,7 @@ @implementation RNCallKit NSMutableDictionary *_settings; NSOperatingSystemVersion _version; BOOL _isStartCallActionEventListenerAdded; + NSUUID *_lastUUID; } // should initialise in AppDelegate.m @@ -107,6 +108,7 @@ - (void)dealloc #endif int _handleType = [self getHandleType:handleType]; NSUUID *uuid = [[NSUUID alloc] initWithUUIDString:uuidString]; + _lastUUID = uuid; CXCallUpdate *callUpdate = [[CXCallUpdate alloc] init]; callUpdate.remoteHandle = [[CXHandle alloc] initWithType:_handleType value:handle]; callUpdate.supportsDTMF = YES; @@ -194,6 +196,7 @@ - (void)dealloc RCT_EXPORT_METHOD(reportConnectedOutgoingCallWithUUID:(NSString *)uuidString) { NSUUID *uuid = [[NSUUID alloc] initWithUUIDString:uuidString]; + _lastUUID = uuid; [self.callKitProvider reportOutgoingCallWithUUID:uuid connectedAtDate:[NSDate date]]; } @@ -288,6 +291,11 @@ - (CXProviderConfiguration *)getProviderConfiguration if (_settings[@"ringtoneSound"]) { providerConfiguration.ringtoneSound = _settings[@"ringtoneSound"]; } + if (@available(iOS 11.0, *)) { + if (_settings[@"includesInRecents"]) { + providerConfiguration.includesCallsInRecents = [_settings[@"includesInRecents"] boolValue]; + } + } return providerConfiguration; } @@ -300,7 +308,7 @@ - (void)configureAudioSession AVAudioSession* audioSession = [AVAudioSession sharedInstance]; [audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error:nil]; - [audioSession setMode:AVAudioSessionModeVoiceChat error:nil]; + [audioSession setMode:AVAudioSessionModeVideoChat error:nil]; double sampleRate = 44100.0; [audioSession setPreferredSampleRate:sampleRate error:nil]; @@ -440,6 +448,7 @@ - (void)provider:(CXProvider *)provider performSetHeldCallAction:(CXSetHeldCallA #ifdef DEBUG NSLog(@"[RNCallKit][CXProviderDelegate][provider:performSetHeldCallAction]"); #endif + [action fulfill]; } - (void)provider:(CXProvider *)provider timedOutPerformingAction:(CXAction *)action diff --git a/package.json b/package.json index 9cc4618..8eb61f0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "react-native-callkit", - "version": "1.3.3", + "version": "1.3.4", "description": "iOS 10 CallKit Framework For React Native", "main": "index.js", "scripts": {