j2e*_*nue 4 localization apple-push-notifications ios
在让 APNS 向设备发送消息之前,我想要本地化一个消息字符串。我希望我能看到 json 有效负载本身,让我理解结构,而不是设备为我解析它。但无论如何,我如何使用 loc_key 和 loc_args 参数?从我发现的文档中:
\n\n\n\n\nloc-key\n string\n 当前本地化的 Localized.strings 文件中警报消息字符串的键(由用户\xe2\x80\x99s 语言首选项设置)。键字符串可以使用 %@ 和 %n$@ 说明符进行格式化,以获取 loc-args 数组中指定的变量。有关详细信息,请参阅本地化格式化字符串。
\n\nloc-args 字符串数组 出现在 loc-key 中格式说明符位置的变量字符串值。有关更多信息,请参阅本地化格式化字符串。
\n
官方文档在这里
\n\n我需要一个如何本地化字符串的具体示例以及什么是 loc_args ?
\n\n我只是在这里猜测,但如果我有一个像这样本地化的字符串:\nmystring="cool localized message"\n那么 loc_key 将是“mystring”,对吗?
\nloc-key 是一个字符串,需要与应用程序包内的 Localized.strings 文件中的键匹配。例如,如果 loc-key 是“my-push.hello-world”,并且 Localized.strings 文件中有以下行:
"my-push.hello-world" = "Hello, World!";
Run Code Online (Sandbox Code Playgroud)
显示给用户的推送消息将显示为“Hello, World”。
log-args 是将在消息中替换的字符串,就像您在[NSString stringWithFormat:@"blabla %@"];
苹果的例子是这样的:
推送通知负载:
"alert" : {
"loc-key" : "GAME_PLAY_REQUEST_FORMAT",
"loc-args" : [ "Jenna", "Frank"]
}
Run Code Online (Sandbox Code Playgroud)
Localized.strings 内容:
"GAME_PLAY_REQUEST_FORMAT" = "%@ and %@ have invited you to play Monopoly";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3558 次 |
| 最近记录: |