gpt4 book ai didi

ios - 在显示之前在远程推送通知消息中格式化双倍

转载 作者:搜寻专家 更新时间:2023-11-01 05:44:19 28 4
gpt4 key购买 nike

在我的一些远程推送通知中,除了字符串之外,还会发送 double 值。我需要根据用户的区域设置在接收设备上格式化这些值,并正确设置货币。当应用程序位于前台时,我知道如何执行此操作/解决方法:

func application(application: UIApplication, didReceiveRemoteNotification userInfo: [NSObject : AnyObject]) {

...

var locArgsFormatted: [NSObject] = []

for arg in locArgs {

if let double = arg as? Double {
locArgsFormatted.append(Utils.Formatter.currencyOutput.stringFromNumber(double)!)

} else {
locArgsFormatted.append(arg)

}
}

let formattedString = NSString(format: localizedString, arguments: Utils.Methods.getVaListFromArguments(locArgsFormatted)) as! String
}

但是当应用程序处于后台时,我不知道如何进行(以及类似的调整)。警报或横幅中显示的消息是通过获取 Localizable.strings 文件中的本地化字符串自动创建的(没有选项首先格式化任何 double 值)但是我如何像在通知消息显示之前显示的示例中那样进行干预用户?

最佳答案

基于 Apple's Local and Remote Notification Programming Guide接收设备上的客户端应用程序应向提供者传递当前语言偏好,以便让提供者知道如何本地化消息。因此,本地化将通过在连接到 APN 的服务器上运行的软件进行。

有了这样的架构,发送应用程序就不需要保留任何用户的任何本地化信息。此外,上述编程指南还展示了如何保证接收方设备中本地化设置的任何更改都会传播到提供方。

关于ios - 在显示之前在远程推送通知消息中格式化双倍,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30999894/

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