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

如何处理不同语言的iOS推送通知,ios,iphone,push-notification,Ios,Iphone,Push Notification,我正在开发一个应用程序,我在其中实现了推送通知。现在我必须为推送通知提供多语言支持。 请建议推送通知的本地化是在应用程序端还是服务器端。 当应用程序未运行时,如何处理横幅上显示的推送语言 提前感谢正如您刚才指出的,在应用程序未运行的情况下,操作系统将收到通知,并且不会在应用程序中运行任何代码来翻译它们,并在收到它们时显示它们。因此,在发送之前,它们需要在服务器端进行翻译。应用程序不必担心它们是用什么语言发送的-不需要在应用程序端为此编写代码 当您将推送令牌注册为设备设置为的已知语言时,存储设备区

我正在开发一个应用程序,我在其中实现了推送通知。现在我必须为推送通知提供多语言支持。 请建议推送通知的本地化是在应用程序端还是服务器端。 当应用程序未运行时,如何处理横幅上显示的推送语言


提前感谢

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


当您将推送令牌注册为设备设置为的已知语言时,存储设备区域设置可能是一个好主意

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


当您将推送令牌注册为设备设置为的已知语言时,存储设备区域设置可能是一个好主意

这是一个老问题,但它值得一个新的答案

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

要在服务器端发送本地化通知,服务器需要知道用户的语言首选项,就像AronString建议的那样,最好在注册推令牌时这样做

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

aps有效载荷示例:

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

要获得更好的解释,请在此处阅读更多内容:

这是一个老问题,但它需要一个新的答案

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

要在服务器端发送本地化通知,服务器需要知道用户的语言首选项,就像AronString建议的那样,最好在注册推令牌时这样做

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

aps有效载荷示例:

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

要获得更好的解释,请在此处阅读更多内容:

如果您有一组固定的小消息,您可以对收到的文本进行本地化(即翻译)。仅当它是一组固定的消息时。不一致的翻译会给人留下非常糟糕的印象。如果你有一小部分固定的信息,你可以对你收到的文本进行本地化(即翻译)。仅当它是一组固定的消息时。不一致的翻译会给人留下非常糟糕的印象。这是服务器端的工作。你不能在你这边做。这是服务器端的工作。你不能站在你这边做这件事。