如何使用不同语言处理iOS推送通知

时间:2016-06-22 12:14:45

标签: ios iphone push-notification

我正在开发一个应用程序,我已经实现了Push Notifications。现在我必须支持推送通知的多语言。 请建议推送通知的本地化是应该在应用程序端还是服务器端。 以及如何处理应用程序未运行时在Banner上显示的推送语言?

提前致谢

2 个答案:

答案 0 :(得分:2)

就像您刚刚指出的那样,在您的应用未运行的情况下,操作系统将收到通知,并且不会在您的应用中运行任何代码来翻译它们,并会在收到时显示它们。因此,在发送之前,他们需要在服务器端进行翻译。该应用程序不应该担心它们被发送的语言 - 没有代码需要为此编写应用程序端。

当您将推送令牌注册到设备所设置的语言时,可能会存储设备区域设置。

答案 1 :(得分:1)

这是一个老问题,但它应该得到一个新的答案。

本地化的推送通知可以在服务器端或在应用程序中解决。

要发送本地化的通知,服务器端需要服务器知道用户的语言偏好,并且像aronspring所建议的那样,一个好时机是在注册推送令牌时。

要在手机上本地进行操作,您需要在应用程序包Localizable.strings文件中提供所有可能的通知及其翻译。然后,服务器将发送密钥到Localizable.strings中相应的翻译,而不是发送要显示的文本。

aps有效负载示例:

"aps" : {
    "alert" : {
        "loc-key" : "SOME_MESSAGE"
    }
}

要获得更好的解释,请在此处阅读更多信息:Local and Remote Notification Programming Guide