我正在尝试使用用户的ID发送推送通知。我已经测试了使用installationId发送,查询_Installation类,但是我想查询用户指针的会话类,然后转向并查询安装类。
我的问题在于查询会话类的限制。我已成功使用找到here的createWithoutData(),我知道它正在工作,因为我可以输出该用户。但是,即使使用找到here的主密钥后,结果也始终为空。
答案 0 :(得分:0)
向特定用户发送推送通知的一般做法是,您将存储指向安装类中的用户的指针...例如,当用户注册时执行此操作
<强>夫特强>
if let installation = PFInstallation.current() {
installation["user_id"] = PFUser.current()!
installation.saveInBackground()
}
<强> Cloudcode 强>
var pushQuery = new Parse.Query(Parse.Installation);
pushQuery.equalTo('user_id', tarUser);
pushQuery.exists("deviceToken");
pushQuery.limit(1); // in case there are more Installation with the user ID, use only the latest
pushQuery.descending("createdAt");
Parse.Push.send({
where: pushQuery, // Set our Installation query
data: {
alert: "Some push text"
}
}, {
success: function() {
// Push was successful
response.success();
},
error: function(error) {
console.error("Got an error " + error.code + " : " + error);
response.error(error);
},
useMasterKey: true
});
如果我没记错的话,你必须用指针结构查询Cloud代码中的指针,比如
var tarUser = {
__type: 'Pointer',
className: '_User',
objectId: 'insertObjectIDHere'
};