使用Firebase Phone身份验证无法获取通知

时间:2017-10-12 00:49:01

标签: ios swift firebase firebase-authentication firebaseui

我目前正在实施firebase手机身份验证,并且可以使用firebase UI成功实现手机身份验证而不会调整,但从我的研究中看来,实施firebase手机身份验证而不需要调整就需要用户允许通知。我知道firebase发送的静默通知不需要通过允许通知来批准,但似乎获得通知而不是调整的唯一方法是要求用户允许通知。有没有人知道如何或是否可以在没有调整和不询问用户通知权限的情况下这样做?

我已经添加了将通知证书推送到firebase,并添加了firebase phone ui docs中列出的所有必需功能。

在没有要求用户允许通知的情况下,手机身份验证文档中列出的此功能未被调用(用户也必须选择允许)

func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) {
  // Pass device token to auth
  Auth.auth().setAPNSToken(deviceToken, type: AuthAPNSTokenTypeProd)

  // Further handling of the device token if needed by the app
  // ...
}

如果未调用此函数未设置setAPNSToken,我将无法获得静默通知以继续使用phone auth,我将收到一般错误

  

身份验证错误:您的项目似乎存在问题   Firebase电话号码验证设置,请确保   按照上面的说明进行操作   https://firebase.google.com/docs/auth/ios/phone-auth

1 个答案:

答案 0 :(得分:3)

我继续按照Firebase文档中的说明禁用method swizzling,然后实施了所有必需的方法,解决方案是我需要使用应用的功能然后制作确保已启用后台模式以及推送通知(已启用此功能)。然后在后台模式下,我必须启用远程通知

然后我不得不从我的设备中删除该应用并重新安装。这解决了我的问题,并调用了注册通知所需的功能。