为 android 配置 Flutter "sign_in_with_apple" 时出现问题

Problem configuring Flutter "sign_in_with_apple" for android

我正在尝试设置 Flutter sign_in_with_apple 包,但 运行 遇到 android 方面的问题。

到目前为止我所做的,完全按照包的自述文件进行:

  1. 设置 glitch.me 服务器。服务器已启动并正在侦听 https://MYSERVER.glitch.me/callbacks/sign_in_with_apple 我添加了一些控制台日志记录以确保我知道服务器何时被访问。
  2. 在苹果开发者控制台设置appid和serviceid。服务标识符是 com.company.foobar.dev.signin
  3. 在服务配置中添加故障回调 https://MYSERVER.glitch.me/callbacks/sign_in_with_apple 作为 return url。
  4. 将自述文件中的 activity 块复制到我的 android 清单中。注意:我不知道要设置什么名称。保留它指的是包还是将其更改为我的应用程序 ID?目前 android:name="com.aboutyou.dart_packages.sign_in_with_apple.SignInWithAppleCallback"
  5. 将这个块添加到我的 flutter 服务中:
          "https://MYSERVER.glitch.me/callbacks/sign_in_with_apple";
      final appleIdCredential = await SignInWithApple.getAppleIDCredential(
          scopes: [
            AppleIDAuthorizationScopes.email,
            AppleIDAuthorizationScopes.fullName,
          ],
          webAuthenticationOptions: WebAuthenticationOptions(
              clientId: "com.company.foobar.dev.signin",
              redirectUri: Uri.parse(redirectURL)));

不幸的是,在第 5 步中对 SignInWithApple.getAppleIDCredential 的调用引发异常,我看到 invalid_request 无效的网络重定向 url。故障服务器甚至从未被击中,这让我认为即使我在第 4 步(android 清单中的意图名称)搞砸了,问题更有可能出现在苹果开发者控制台设置中。但是,我很确定我已经遵循了 README 并且我 运行 没有想法。

嗯,我放弃了开发包的苹果开发者控制台服务设置(带有 applicationIdSuffix '.dev' 和 bundleid 'com.company.foobar.dev'),并为生产风格设置了相同的设置。这个按预期工作。

我现在想知道 apple 是否甚至不将 android 的请求重定向到故障服务器,除非该包具有 playstore 存在。评论?