Я работаю над токеном FCM. Первоначально я могу зарегистрировать токен FCM и получить токен от FCM. Моя проблема заключается в том, что при выходе из системы я вызываю API-интерфейс удаления токена FCM из бэкэнда, и он удаляет токен с устройства. После удаления токена FCM он перемещается на контроллер страницы входа, но я не смог снова зарегистрировать токен FCM. При входе в систему мне нужно передать токен FCM вместе с вызовом API входа.
Вот код, который я использовал для получения токена FCM в логине viewController:
var fcmval :String?
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
NotificationCenter.default.addObserver(self, selector: #selector(self.fcmTokenUpdated(notification:)), name: Notification.Name("FCMToken"), object: nil)
}
deinit {
//Don't forget to removeObserver
NotificationCenter.default.removeObserver(self, name: Notification.Name("FCMToken"), object: nil)
}
@objc func fcmTokenUpdated(notification:Notification){
if let userInfo = notification.userInfo as? [String: String]{
if let c = userInfo["token"] {
print(c)
fcmval = c
print("fcm token from app view controller:::", fcmval)
let baseURL = "https://url"
A8FlowBuilder(self).showLoginView(url: baseURL, fcm: fcmval ?? "")
}
}
}
override func viewDidAppear(_ animated: Bool) {
NotificationCenter.default.addObserver(self, selector: #selector(self.fcmTokenUpdated(notification:)), name: Notification.Name("FCMToken"), object: nil)
}
Как зарегистрировать токен FCM после выхода из системы?
1 ответ
Сохраните его в defaults/global vaiable
@objc func fcmTokenUpdated(notification:Notification){
if let userInfo = notification.userInfo as? [String: String] , let c = userInfo["token"] {
UserDefaults.standard.set(c,"Token")
}
}
Затем получить к нему доступ в любом месте
Похожие вопросы
Новые вопросы
ios
iOS - мобильная операционная система, работающая на Apple iPhone, iPod touch и iPad. Используйте этот тег [ios] для вопросов, связанных с программированием на платформе iOS. Используйте связанные теги [target-c] и [swift] для проблем, характерных для этих языков программирования.