У меня есть эта проблема с Google Cloud Messaging
(GCM
) после рефакторинга в Swift 3. Может ли кто-нибудь помочь?Невозможно преобразовать значение типа '(String !, NSError!) ->()' в ожидаемый тип аргумента 'GGLInstanceIDTokenHandler!'
Я получил эту ошибку: Невозможно преобразовать значение типа - ожидаемого типа аргумента '>() (строка !, NSError!)' 'GGLInstanceIDTokenHandler!
Здесь:
func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
// ...
GGLInstanceID.sharedInstance().tokenWithAuthorizedEntity(gcmSenderID, scope: kGGLInstanceIDScopeGCM, options: registrationOptions, handler: registrationHandler)
}
И та же ошибка здесь:
func onTokenRefresh() {
GGLInstanceID.sharedInstance().token(withAuthorizedEntity: gcmSenderID, scope: kGGLInstanceIDScopeGCM, options: registrationOptions, handler: registrationHandler)
}
Это registrationHandler:
func registrationHandler(_ registrationToken: String!, error: NSError!) {
// ...
}
Похоже, что подпись 'registrationHandler' изменилась. Повторите метод (ы), чтобы получить фактическую подпись с завершением кода. – vadian
@vadian: он показывает регистрациюHandler лишен :( – Kaptain
Тогда посмотрите в документации для замены. – vadian