2017-07-11 28 views
10

tôi đang sử dụng pushKit trong ứng dụng của mình nhưng didUpdatePushCredentials đại biểu không bao giờ được gọi. xcode 9 không có Voice over IPVoip (Voice over IP) bị thiếu trong Xcode 9

Capabilities -> Các chế độ Background -> Voice over IP

enter image description here

tôi đang theo liên kết này .. implement pushkit

chứng chỉ được tạo một lần nữa nhưng không làm việc.

+0

Ứng dụng của tôi al vì vậy hãy sử dụng PushKit và không hoạt động nữa nếu được xây dựng bằng Xcode 9 (hiện tại là phiên bản beta 5). Tôi thấy thông báo đẩy đến trong bảng điều khiển hệ thống iOS (thông báo APSCourier đã nhận cho chủ đề được bật '...' với tải trọng ...) nhưng các thư không bao giờ đạt được didReceiveIncomingPushWithPayload trong ứng dụng của tôi. – user1195883

Trả lời

-1

Có thể đây là một lỗi trong phiên bản Beta vì không có thông báo chính thức hay bài viết hay bất cứ điều gì về chế độ nền chính thức cứu chuộc từ XCode 9.

Hoặc có thể một khi bạn thực hiện Callkit, chế độ nền chính thức tự động coi .

Tôi khuyên bạn nên đợi phiên bản chính thức của XCode 9.

câu trả lời Cập nhật

Với XCode 9 và iOS 11, Callkit đang được bắt buộc để thực hiện VOIP. Chế độ nền (VOIP) sẽ được kích hoạt tự động sau khi tích hợp Callkit.

Cố gắng gọi điện từ WhatsApp, lịch sử cuộc gọi đó cũng sẽ có sẵn trong ứng dụng gọi điện thoại gốc.

câu trả lời Cập nhật -> Bạn đang có thể thêm chế độ background hỗ trợ bằng tay

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

bạn có bất kỳ liên kết hỗ trợ nào không? @hasya – Rivendell

+0

Không, tôi vừa hiểu điều này sau khi nhận được chính thức XCode 9 và iOS 11. – Hasya

12

Mặc dù, Xcode 9 được công bố chính thức, vẫn còn không VoIP vào khả năng.

Tôi đã giải quyết được sự cố của mình bằng cách mở tệp Info.plist làm mã nguồn và thêm "voip" vào UIBackgroundModes theo cách thủ công.

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

Đây là giải pháp đúng, khả năng voip không tồn tại nữa. Thêm tính năng này sẽ cho phép gọi hàm didUpdateCredentials. – ydemartino

0

theo diễn đàn thảo luận của Apple này là câu trả lời

"Trong iOS 10, bạn nên sử dụng PushKit để xử lý các thông báo đẩy cho đến các cuộc gọi VoIP. Vì vậy, khi bạn xây dựng ứng dụng của bạn so với iOS 10 SDK , bạn cần phải chuyển sang PushKit (có thể được hỗ trợ tất cả cách quay lại iOS 8, nhưng khi bạn chuyển sang iOS 10, đề xuất của chúng tôi là cập nhật mục tiêu triển khai tối thiểu của bạn lên iOS 9). "

liên kết ban đầu của câu trả lời: https://forums.developer.apple.com/thread/50106

Các vấn đề liên quan