gpt4 book ai didi

ios - 用云代码解析推送通知语言

转载 作者:行者123 更新时间:2023-11-29 02:37:47 26 4
gpt4 key购买 nike

我的应用需要双语(英语和意大利语)。我正在通过云代码处理推送通知,我正在尝试根据客户端语言发送不同的通知。我在安装表中创建了一个语言字段并将[[NSLocale PreferredLanguages] objectAtIndex:0];。下面的代码有效,但我想知道是否有另一种方法可以做到这一点。我更愿意在查询之前设置“警报”消息,这样我就只有 1 个查询。基本上我需要检查该特定用户的语言字段是否是“it”,然后进行查询。有可能还是我的是唯一的解决方案?

//push test
Parse.Cloud.afterSave("MeetingObject", function(request) {
// user owner of the meeting object
var user = request.object.get("user");

var pushQueryEn = new Parse.Query(Parse.Installation);  
pushQueryEn.equalTo("user", user);
pushQueryEn.notEqualTo("language", 'it');
Parse.Push.send({
where: pushQueryEn,
data: {
alert: "English push test",
badge: "Increment",
sound: "cheering.caf",
}
}, {
success: function() {
// Push was successful
console.log(request.object.get("language"));
},
error: function(error) {
console.error("Got an error " + error.code + " : " + error.message);
}
});

var pushQueryIt = new Parse.Query(Parse.Installation);  
pushQueryIt.equalTo("user", user);
pushQueryIt.equalTo("language", 'it');
Parse.Push.send({
where: pushQueryIt,
data: {
alert: "Italian push test",
badge: "Increment",
sound: "cheering.caf",
}
}, {
success: function() {
// Push was successful
console.log(request.object.get("language"));
},
error: function(error) {
console.error("Got an error " + error.code + " : " + error.message);
}
});
});

最佳答案

是的,有。您必须直接设置推送通知负载的 aps 字典,并使用 loc-key 和可选的 loc-args action-loc-key 参数。在第一个参数中,您传递在应用程序包的 Localizable.strings 文件中本地化的消息的本地化 key 。在第二个参数中,您可以传递一个数组,该数组将替换为本地化消息中的字符串占位符。第三个参数将用作默认操作的名称(“滑动到...”)

例如,您在 Localized.stings 文件中定义以下键:

"msg" = "%@ wants to send you a message";
"rsp" = "respond";

在云代码中,您可以按如下方式构建推送有效负载:

var payload = 
"data":{
"aps":{
"alert":{
"loc-key":"msg",
"loc-args":["John"],
"action-loc-key":"rsp"
},
}
};
// set at least the 'where' key of the payload
Parse.Push.send(payload);

此代码应向您显示“John 想向您发送消息”,本地化到用户的当前区域设置,默认操作将是“滑动以响应...”

关于ios - 用云代码解析推送通知语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26163121/

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