【发布时间】:2018-02-10 16:04:06
【问题描述】:
有没有办法翻译/本地化从 Firebase 发送的通知?
我的应用设置成功接收通知:
extension AppDelegate: UNUserNotificationCenterDelegate {
func setupNotifications() {
registerForRemoteNotifications()
setupNotificationTokenRefresh()
}
func registerForRemoteNotifications() {
let application = UIApplication.shared
UNUserNotificationCenter.current().delegate = self
application.registerForRemoteNotifications()
}
func setupNotificationTokenRefresh() {
storeNotificationToken()
_ = NotificationCenter.default.addObserver(
forName: .MessagingRegistrationTokenRefreshed,
object: nil,
queue: .current
) { [weak self] _ in
self?.storeNotificationToken()
}
}
private func storeNotificationToken() {
Messaging.messaging().token { [weak self] token, error in
if let error = error {
Log.error("Error fetching FCM registration token: \(error)")
} else if let token = token {
// save token
}
}
}
}
从带有数据对象的 Firebase 云函数发送有效负载,我想访问该数据对象并翻译/本地化发送的消息。
我查看了提供的几种方法,但它们似乎是关于仅在应用程序处于前台时才拦截通知,这不是我感兴趣的。
从服务器发送的有效载荷:
const payload = {
notification: {
title: 'Friend request',
body: senderName + ' wants to add you as a friend'
},
data: {
senderUserId: friendRequestFrom,
type: 'friendRequest'
}
}
【问题讨论】:
标签: ios swift firebase-cloud-messaging unusernotificationcenter