gpt4 book ai didi

ios - 使用 swift 将带有解析的通知推送给收件人

转载 作者:行者123 更新时间:2023-11-30 14:06:35 24 4
gpt4 key购买 nike

我正在尝试向特定收件人发送推送通知。我现在只是在练习解析后端中存在的对象 ID 的硬编码数组。

我正在调用appDelegate中的代码。我的证书和个人资料中拥有正确的权利。在解析仪表板中,它显示通知正在发送,但测试设备上没有收到通知。测试设备可以接收从解析仪表板发送的通知。我已经包含了所需的框架。

代码:func 应用程序(应用程序:UIApplication,didRegisterForRemoteNotificationsWithDeviceToken deviceToken:NSData){ 让安装 = PFInstallation.currentInstallation() println("是否注册了设备 token (deviceToken)") 安装.setDeviceTokenFromData(deviceToken) 安装.saveInBackground() println("对象 ID 可能是 (installation.objectId)")

    let query = PFQuery()
let objectIDArray : [String] = ["uQfdVtB6pk","kUL0EeXjzY", "6uGdmKv599"]

for object in objectIDArray {
println("objectid is \(object)")

let message: NSString = "test" as NSString

var data = [ "title": "Some Title",
"alert": message]

var userQuery: PFQuery = PFUser.query()!
userQuery.whereKey("objectId", equalTo: object)

var query: PFQuery = PFInstallation.query()!
query.whereKey("Installation", equalTo: installation)
query.whereKey("device_id", equalTo: object)

var push: PFPush = PFPush()
push.setQuery(query)
push.setData(data)
push.sendPushInBackgroundWithBlock {
(success: Bool, error: NSError?) -> Void in
if success {
println("IN success")
} else {
println("IN ERROR WITH \(error?.localizedDescription))")
}
}

}

}

我正在进入“成功”阶段

最佳答案

你从哪里运行这段代码?另外,“device_id”是什么?这是您添加到 Installation 类中的另一列吗?

您可能需要在 Installation 类中添加一个指向当前用户的指针。这样您就可以查询将来特定用户的安装情况。

您也不需要使用 for 循环来遍历所有 objectId。所有这些都可以使用以下查询通过一个查询来处理:

var query: PFQuery = PFInstallation.query()!
query.whereKey("objectId", containedIn: objectIDArray)

var push: PFPush = PFPush()
push.setQuery(query)
push.setData(data)
push.sendPushInBackgroundWithBlock {
(success: Bool, error: NSError?) -> Void in
if success {
println("IN success")
} else {
println("IN ERROR WITH \(error?.localizedDescription))")
}
}

关于ios - 使用 swift 将带有解析的通知推送给收件人,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32314263/

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