2017-05-11 28 views
1

私のアプリから「telprompt」を使用して電話していますが、コールが終了したら新しいView Controllerを表示してAPIを取得してデータを取得しますポップアップを開き、ヒットしたAPIを表示するイベントを受け取りたいiOS:CallKitで発信イベントを取得できませんでした

私はCallKitを使用しようとしましたが、Delegateメソッドが呼び出されていません。

ここは私のコードです。

#import <CallKit/CXCallObserver.h> 
#import <CallKit/CXCall.h> 

私はのviewDidLoadでCXCallObserverDelegate

に準拠しています

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"); 

    } 
} 

上記の方法は、と呼ばれる取得されていません代議員を設定すると、私は何が間違っているのか分かりません。

答えて

2

強力な参照/プロパティを作成した後にコールビューオブジェクトに強い参照がありませんでした。コントローラにはうまくいきます。

プロパティを追加し、その中にcallObserverオブジェクトを配置します。

@property (nonatomic, strong) CXCallObserver *callObserver; 

のviewDidLoad:

CXCallObserver *callObserver = [[CXCallObserver alloc] init]; 
[callObserver setDelegate:self queue:nil]; 
_callObserver = callObserver; 

今デリゲートメソッドが呼び出されます。

乾杯!

関連する問題