我收到英语/阿拉伯语两种语言的FCM推送通知,但我想只用阿拉伯语显示,如何显示?
我的代码 -
@available(iOS 10, *)
extension AppDelegate : UNUserNotificationCenterDelegate {
// Receive displayed notifications for iOS 10 devices.
func userNotificationCenter(_ center: UNUserNotificationCenter,
willPresent notification: UNNotification,
withCompletionHandler completionHandler: @escaping (UNNotificationPresentationOptions) -> Void) {
let userInfo = notification.request.content.userInfo
if let jsonResult = userInfo as? Dictionary<String, AnyObject> {
if let notifyType = jsonResult["type"] as? String {
if notifyType == "8" || notifyType == "18" {
self.pushRedirection(userInfo: userInfo)
}else{
if let league_id = jsonResult["league_id"] as? String {
if let contestUnique_id = jsonResult["contest_unique_id"] as? String {
}
}
}
}
}
completionHandler([.alert,.sound])
}
我收到英文通知(Match Reminder)。如何用阿拉伯语设置
我的通知数据是
[AnyHashable("gcm.notification.type"): 5, AnyHashable("league_id"): 3, AnyHashable("en_msg"): Match Reminder, AnyHashable("gcm.notification.ar_msg"): القوانين, AnyHashable("gcm.notification.en_msg"): Match Reminder, AnyHashable("gcm.notification.league_id"): 3, AnyHashable("contest_unique_id"): KBm8oVuTR, AnyHashable("gcm.message_id"): 0:1528974245362555%6c5fd9d06c5fd9d0, AnyHashable("gcm.notification.contest_unique_id"): KBm8oVuTR, AnyHashable("ar_msg"): القوانين, AnyHashable("google.c.a.e"): 1, AnyHashable("type"): 5, AnyHashable("aps"): {
alert = "Match Reminder";
}, AnyHashable("body"): Match Reminder]
答案 0 :(得分:1)
你需要写一个notification service extension。这将允许您在显示之前修改通知的有效负载。
正如docs所说:
UNNotificationServiceExtension对象...允许您在将远程通知传递给用户之前自定义远程通知的内容。
这正是你想要做的。