簡體   English   中英

帶有VoIP呼叫的SiriKit應用程序無法在iOS 10中運行

[英]SiriKit with VoIP call Application not working in iOS 10

我正在撥打VoIP電話申請。 我可以通過我的申請撥打電話。 我已經集成了SiriKit設置並添加了以下代碼。

#pragma mark -Start Audio Call
- (void)resolveContactsForStartAudioCall:(INStartAudioCallIntent *)intent
                          withCompletion:(void (^)(NSArray<INPersonResolutionResult *> *resolutionResults))completion{
    NSLog(@"maytest resolveContactsForStartAudioCall");


    NSArray<INPerson *> *recipients = intent.contacts;

    NSMutableArray<INPersonResolutionResult *> *resolutionResults = [NSMutableArray array];



    if (recipients.count == 0) {

        completion(@[[INPersonResolutionResult needsValue]]);
        return;
    }else if(recipients.count==1){
        [resolutionResults addObject:[INPersonResolutionResult successWithResolvedPerson:recipients.firstObject]];
    }else if(recipients.count>1){
        [resolutionResults addObject:[INPersonResolutionResult disambiguationWithPeopleToDisambiguate:recipients]];
    }else{
        [resolutionResults addObject:[INPersonResolutionResult unsupported]];

    }
    completion(resolutionResults);
}

- (void)confirmStartAudioCall:(INStartAudioCallIntent *)intent
                   completion:(void (^)(INStartAudioCallIntentResponse *response))completion{

    NSUserActivity *userActivity = [[NSUserActivity alloc] initWithActivityType:NSStringFromClass([INStartAudioCallIntent class])];
    INStartAudioCallIntentResponse *response = [[INStartAudioCallIntentResponse alloc] initWithCode:INStartAudioCallIntentResponseCodeReady userActivity:userActivity];
    completion(response);
}

- (void)handleStartAudioCall:(INStartAudioCallIntent *)intent
                  completion:(void (^)(INStartAudioCallIntentResponse *response))completion{
    NSUserActivity *userActivity = [[NSUserActivity alloc] initWithActivityType:NSStringFromClass([INStartAudioCallIntent class])];

    INStartAudioCallIntentResponse *response = [[INStartAudioCallIntentResponse alloc] initWithCode:INStartAudioCallIntentResponseCodeContinueInApp userActivity:userActivity];
    completion(response);
}

但是,它沒有通過我的應用程序撥打電話。 它通過本地撥號器撥打電話,有時還顯示尚未設置siri的應用程序。 任何人都可以指導我和打電話后,如何保存通話記錄。 謝謝!

我也遇到過這個問題!!!

我的情況,是因為我用中文打電話給Siri !!!! 我花了半天時間搞清楚!

如果我將Siri語言改為英語,一切正常!

在中文中,無論我如何指定應用程序,Siri都只能通過本地撥號器撥打電話。

我不確定它是否也會在其他語言上發生,因為我只能測試這兩種語言。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM