gpt4 book ai didi

iOS VoIP 推送通知 (PushKit)

转载 作者:搜寻专家 更新时间:2023-10-31 21:59:11 24 4
gpt4 key购买 nike

我正在搜索有关 VoIP 推送通知的推送通知的信息。有一点我还不清楚:

1) 如果用户还没有打开应用程序,然后他接到一个电话。有没有办法从通知中启动应用程序?

2) 应用程序如何等待特定事件?例如,我的设备如何知道他接到某人的电话?

3) 我使用来自 https://github.com/Hitman666/ios-voip-push 的 Appdelegate 文件但在我的情况下它不起作用(很多错误),here是我得到的错误的预览。

谢谢

最佳答案

1) 如果用户还没有打开应用,然后他接到一个电话。有没有办法从通知中启动应用程序?

- 第一次用户必须点击应用程序图标并打开它,然后只有设备 ID 会注册以接收推送工具包负载。然后不需要打开应用程序。当应用程序处于终止状态并且您必须根据推送工具包有效负载安排本地通知时,它也会起作用。

2) 应用程序如何等待特定事件?例如,我的设备如何知道他接到某人的电话?

- 您必须根据推送套件负载安排本地通知。

3) 我使用来自 https://github.com/Hitman666/ios-voip-push 的 Appdelegate 文件但在我的情况下它不起作用(很多错误),这是我得到的错误的预览。

- 引用下面的代码

import UIKit
import PushKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate,PKPushRegistryDelegate {

var window: UIWindow?


func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {


let types: UIRemoteNotificationType = [.Alert, .Badge, .Sound]
application.registerForRemoteNotificationTypes(types)

self.PushKitRegistration()

return true
}

//MARK: - PushKitRegistration

func PushKitRegistration()
{

let mainQueue = dispatch_get_main_queue()
// Create a push registry object
if #available(iOS 8.0, *) {

let voipRegistry: PKPushRegistry = PKPushRegistry(queue: mainQueue)

// Set the registry's delegate to self

voipRegistry.delegate = self

// Set the push type to VoIP

voipRegistry.desiredPushTypes = [PKPushTypeVoIP]

} else {
// Fallback on earlier versions
}


}


@available(iOS 8.0, *)
func pushRegistry(registry: PKPushRegistry!, didUpdatePushCredentials credentials: PKPushCredentials!, forType type: String!) {
// Register VoIP push token (a property of PKPushCredentials) with server

let hexString : String = UnsafeBufferPointer<UInt8>(start: UnsafePointer(credentials.token.bytes),
count: credentials.token.length).map { String(format: "%02x", $0) }.joinWithSeparator("")

print(hexString)


}


@available(iOS 8.0, *)
func pushRegistry(registry: PKPushRegistry!, didReceiveIncomingPushWithPayload payload: PKPushPayload!, forType type: String!) {
// Process the received push


}

}

获取有关如何为基于 VOIP 的应用程序集成 pushkit 的更多信息。

刚刚更新了 Swift 4.0 代码。

https://github.com/hasyapanchasara/PushKit_SilentPushNotification

关于iOS VoIP 推送通知 (PushKit),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43638814/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com