2017-07-11 6 views
10

Używam pushKit w mojej aplikacji, ale delegat didUpdatePushCredentials nigdy nie zadzwonił. Xcode 9 nie posiadające Voice over IPBrak VoIP (Voice over IP) w Xcode 9

Możliwości -> Tryby Background -> Voice over IP

enter image description here

śledzę ten link .. implement pushkit

certyfikaty generowane ponownie, ale nie działa.

+0

Moja aplikacja al więc używa PushKit i nie działa, jeśli jest zbudowany z Xcode 9 (obecnie beta 5). Widzę, że komunikaty push docierają do konsoli systemowej iOS (komunikat APSCourier Received dla włączonego tematu "..." z ładunkiem ...), ale wiadomości nigdy nie docierają do aplikacji didReceiveIncomingPushWithPayload w mojej aplikacji. – user1195883

Odpowiedz

-1

Może być to błąd w wersji beta, ponieważ nie ma oficjalnego oświadczenia lub artykuł lub coś o trybie odkupieńczej VOIP tle z XCode 9.

Albo możliwe, gdy wdrożyć Callkit, VOIP tryb tła automatycznie uznawane .

Proponuję czekać na oficjalną wersję XCode 9.

Updated odpowiedź

z Xcode 9 i iOS 11 Callkit jest jako obowiązkowy do wdrożenia VoIP. Tryb tła (VOIP) zostanie automatycznie aktywowany po zintegrowaniu Callkita.

Spróbuj wykonać połączenie z WhatsApp, aby historia połączeń była dostępna również w macierzystej aplikacji telefonicznej.

Updated odpowiedź -> Jesteś można dodać tło obsługują tryby ręcznie

<key>UIBackgroundModes</key> 
<array> 
    <string>audio</string> 
    <string>voip</string> 
    <string>fetch</string> 
    <string>remote-notification</string> 
</array> 
+0

Czy masz jakiś link pomocniczy? @hasya – Rivendell

+0

Nie, po prostu zrozumiałem to po uzyskaniu oficjalnego XCode 9 i iOS 11. – Hasya

12

Chociaż Xcode 9 ogłosił oficjalnie, nadal nie jest VoIP od możliwości.

Rozwiązałem mój problem, otwierając Info.plist jako kod źródłowy i dodając "voip" do UIBackgroundModes ręcznie.

<key>UIBackgroundModes</key> 
<array> 
    <string>audio</string> 
    <string>voip</string> 
    <string>fetch</string> 
    <string>remote-notification</string> 
</array> 
+1

To jest poprawne rozwiązanie, funkcja VoIP już nie istnieje. Dodanie tej opcji umożliwi wywołanie metody didUpdateCredentials. – ydemartino

0

Według Apple forum dyskusyjne to jest odpowiedź

„W iOS 10, należy używać PushKit do obsługi powiadomień push dla połączeń przychodzących VoIP. Kiedy więc budować swoją aplikację przeciwko iOS 10 SDK , musisz przejść do PushKit (który może być obsługiwany z powrotem do iOS 8, ale po przejściu na iOS 10 zalecana jest aktualizacja minimalnego docelowego wdrożenia na system iOS 9). "

oryginalny link do odpowiedź: https://forums.developer.apple.com/thread/50106