2017-10-20 35 views
2

Lors d'une application à l'appel d'application avec l'application de démonstration SinchCallKit qui est fourni dans la dernière version (3.12), si l'appelant raccroche un appel en cours en appelant [SINCall hangup] avant l'appelé répond, l'interface utilisateur CallKit ne sera pas supprimée de l'écran de verrouillage de l'appelé. Il reste là pour toujours.Sinch: comment ignorer Apple CallKit UI de l'écran de verrouillage de l'appelé

Donc, ma question est ici que comment pouvons-nous supprimer l'interface de l'écran de verrouillage CallKit de l'écran de l'appelé automatiquement. Est-ce un problème côté serveur ou Apple gère-t-il cela via des notifications push?

Répondre

2

Il est un bogue dans le SDK Sinch et il a été fixé depuis 3.12.1, s'il vous plaît mettre à jour à la dernière version et essayer .

2

Effectuez une action EndCallAction. Vous avez besoin du numéro d'identification que vous avez utilisé pour créer l'objet d'appel initialement.

// Where you handle your call disconnect 
CXEndCallAction *endCallAction = [[CXEndCallAction alloc] initWithCallUUID:call.callKitUUID]; 
CXTransaction *transaction = [[CXTransaction alloc] init]; 
[transaction addAction:endCallAction]; 
[self requestTransaction:transaction]; 

est ici la méthode -requestTransaction soutien:

- (void)requestTransaction:(CXTransaction *)transaction { 
[self.callController requestTransaction:transaction completion:^(NSError * _Nullable error) { 
    if (error) { 
     SCILog(@"Error requesting transaction: %@", error.localizedDescription); 
    } else { 
     SCILog(@"Requested transaction successfully"); 
    } 
}]; 
} 
+0

Merci @KevinS, j'ai déjà essayé ce code mais j'ai eu cette erreur. 'L'opération n'a pas pu être terminée. (com.apple.CallKit.error.requesttransaction error 4.) ', ce qui signifie que l'ID est incorrect. Je pense que quelque chose ne va pas avec le SDK Sinch. – aytek