为Android配置Flutter“ sign_in_with_apple”时出现问题

问题描述

我正在尝试设置Flutter sign_in_with_apple软件包,但在Android方面遇到问题。

到目前为止,在包裹README之后写了一封信:

  1. 设置glitch.me服务器。服务器已启动并在https://MYSERVER.glitch.me/callbacks/sign_in_with_apple进行监听,我添加了一些控制台日志记录以确保我知道何时按下服务器。
  2. 在Apple开发人员控制台上设置appid和serviceid。服务标识符为com.company.foobar.dev.signin
  3. 在服务配置中添加了故障回调https://MYSERVER.glitch.me/callbacks/sign_in_with_apple作为返回URL。
  4. 将活动块从自述文件复制到我的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无效的Web重定向URL。故障服务器永远都不会被击中,这使我认为,即使我搞砸了步骤4(android清单中的意图名称),该问题也很可能在苹果开发人员控制台设置中出现。但是,我很确定我已经遵循了自述文件,而且我的构想也用光了。

enter image description here

解决方法

嗯,我放弃了开发人员包的Apple开发人员控制台服务设置(带有applicationIdSuffix'.dev'和bundleid'com.company.foobar.dev'),并针对生产环境进行了设置。这一工作符合预期。

我现在想知道苹果是否没有将请求重定向到Android的故障服务器,除非该软件包具有playstore的存在。有评论吗?