【问题标题】:Calling verifyPhoneNumber on my firebase ios app throws "internal-error"在我的 firebase ios 应用程序上调用 verifyPhoneNumber 会引发“内部错误”
【发布时间】:2021-12-19 14:38:19
【问题描述】:

我在我的颤振应用中使用电话号码进行身份验证。虽然它在 Android 上运行良好,但我在 ios 上收到一条错误消息:

_firebaseAuth.verifyPhoneNumber(
        phoneNumber: phoneNumber,
        timeout: ...
        verificationCompleted: ...
        verificationFailed: verificationFailed,
        codeSent: codeSent
...

static final PhoneVerificationFailed verificationFailed =
      (FirebaseAuthException authException) {
    Log.e(authException.message);
    Log.e(authException.code);
}

代码和消息都只说这是一个内部错误,没有任何细节。

在我将应用程序移至新的 Appel 开发者帐户之前,一切正常。这意味着团队 ID 已更改。

我还在这里更改了团队 ID:

我已经重新下载了google.plist,放到了runner目录下。

谷歌云平台也显示正确的团队ID:

相同的团队 id 显示在 xcode 中的“Signing & Capabilities” -> 签名证书中。

更改团队 ID 也会导致无法访问钥匙串:

ITMS-90076:钥匙串访问的潜在丢失 - 以前的版本 的软件的应用程序标识符值为 ['MKYCXH32H9.com.sykori.framr2']和新版软件正在 提交的应用程序标识符为 ['75GNKYT7HC.com.sykori.framr2']。这将导致损失 钥匙串访问。

但我认为唯一意味着以前版本的数据无法再访问了。

【问题讨论】:

    标签: ios firebase flutter firebase-authentication


    【解决方案1】:

    由于您说问题是在您切换开发者帐户后出现的,因此可以安全地假设问题是由配置错误产生的。

    Firebase Phone Auth for iOS docs 指定比您上面描述的更多的步骤,即:

    1. 将您的 APNs 身份验证密钥上传到 Firebase。如果您更改了开发者帐户,APN 身份验证密钥也会更改。
    2. 要使 Firebase SDK 能够使用 reCAPTCHA,您需要将 REVERSED_CLIENT_ID 添加到配置页面上的 URL Schemes 框中。

    我认为这两个步骤可以解决问题,但只是为了确保您可以完成文档中的所有步骤以确保没有其他任何遗漏。

    【讨论】:

    • "如果您更改了开发者帐户,APN 身份验证密钥也会更改。"我忽略了这一点。谢谢。
    猜你喜欢
    • 2015-04-05
    • 2021-09-10
    • 1970-01-01
    • 2019-05-04
    • 2012-05-09
    • 2012-01-14
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多