ios 每次使用 firestore auth 都需要 reCAPCHA (Flutter)

gol*_*oom 2 xcode recaptcha ios firebase-authentication flutter

我在我的颤振应用程序中使用电话验证。我的目标是有以下流程:1. 用户输入电话号码 2. 用户收到验证码 3. 用户输入代码并登录。在 android 上,这就是我得到的流程。然而,在 ios 上,它是 1. 用户输入电话号码 2. reCAPCHA 页面打开以确保我不是机器人 3. 用户收到验证码 4. 用户输入代码并登录(这发生在 ios 模拟器上) . 我想去掉 reCAPCHA 页面。有些人建议我打开“远程通知”,所以我尝试在 Xcode 中通过将其作为“功能”添加到我的跑步者中来做到这一点,现在我的 Info.plist 包括

<key>UIBackgroundModes</key>
    <array>
        <string>remote-notification</string>
    </array>
Run Code Online (Sandbox Code Playgroud)

这似乎是正确的。但是,这并没有解决问题,我仍然面临着验证码。

Firebase 身份验证的版本:

firebase_auth: 0.15.4
Run Code Online (Sandbox Code Playgroud)

颤振医生的输出

[?] Flutter (Channel stable, v1.12.13+hotfix.5, on Mac OS X 10.15.2 19C57, locale en-US)
    • Flutter version 1.12.13+hotfix.5 at /Users/gollyzoom/development/flutter
    • Framework revision 27321ebbad (3 months ago), 2019-12-10 18:15:01 -0800
    • Engine revision 2994f7e1e6
    • Dart version 2.7.0


[?] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/gollyzoom/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling support)
    • Platform android-29, build-tools 28.0.3
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)
    • All Android licenses accepted.

[?] Xcode - develop for iOS and macOS (Xcode 11.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 11.3, Build version 11C29
    • CocoaPods version 1.8.4

[?] Android Studio (version 3.5)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin version 39.0.3
    • Dart plugin version 191.8423
    • Java version OpenJDK Runtime Environment (build 1.8.0_202-release-1483-b49-5587405)

[?] IntelliJ IDEA Ultimate Edition (version 2019.1.4)
    • IntelliJ at /Applications/IntelliJ IDEA.app
    • Flutter plugin version 38.1.3
    • Dart plugin version 191.8593

[?] Connected device (2 available)
    • Android SDK built for x86 • emulator-5554                        • android-x86 • Android 9 (API 28) (emulator)
    • iPhone 11 Pro Max         • B3536B50-C435-4442-9CF4-69D470B979CA • ios         •
      com.apple.CoreSimulator.SimRuntime.iOS-13-3 (simulator)

• No issues found!
Run Code Online (Sandbox Code Playgroud)

如果有人对此有一些建议,我将不胜感激!

小智 5

这是我在 Android 中的问题的解决方案https://github.com/FirebaseExtended/flutterfire/issues/4189#issuecomment-741711350

@Omrankabalan 的步骤

转到https://console.cloud.google.com/

如果你有一个 Firebase 项目,你可以从这里打开

在此处输入图片说明

然后选择所有选项卡并选择您现有的项目

在此处输入图片说明

然后转到 API & Services => Library Search for 'Android Device Verification'

在此处输入图片说明

启用它

在此处输入图片说明

在 Firebase 中确保在项目设置中添加 SHA-256

在此处输入图片说明 在此处输入图片说明

在真实设备上测试