You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Flutter项目中Sign in with Apple在Xcode签名与兼容性菜单不显示的问题

嘿,我来帮你排查下这个问题——这种Xcode功能选项失踪的情况我之前也碰到过,大概率是环境、账号或者配置的问题,一步步来:

先确认基础环境与账号权限
  • 系统版本兼容性:Xcode 11.5要求macOS Catalina 10.15.4或更高版本,如果你的Mac系统版本低于这个要求,很多新功能选项会被直接隐藏。先检查系统版本,不够的话升级后重启Xcode试试。
  • 开发者账号类型:Sign in with Apple和Apple Pay都是需要付费开发者账号($99/年)才能启用的功能,免费个人账号是看不到这些选项的。打开Xcode的Preferences -> Accounts,确认你登录的是有效的付费账号,且账号状态没有过期。
检查项目配置细节
  • 部署目标版本:Sign in with Apple要求项目的Deployment Target至少是iOS 13.0,Apple Pay最低要求iOS 8.0,但Xcode显示选项可能依赖更高的版本。操作路径:选中项目 -> Targets -> General -> Deployment Info,把iOS版本调到13.0以上。
  • Capabilities面板的正确打开方式:Flutter导入的项目有时候会出现Capabilities加载不全的情况,试试两种方式:
    1. 点击Xcode顶部菜单栏的Editor -> Add Capability,在弹出的面板里搜索Sign in with Apple或Apple Pay;
    2. 如果还是找不到,手动编辑权限文件:新建一个Runner.entitlements文件,添加以下内容,然后在Build Settings的Code Signing Entitlements里指定这个文件的路径:
      <!-- 开启Sign in with Apple -->
      <key>com.apple.developer.applesignin</key>
      <array>
          <string>Default</string>
      </array>
      <!-- 开启Apple Pay -->
      <key>com.apple.developer.payment-pass-provisioning</key>
      <true/>
      
重置Xcode缓存解决界面异常

有时候Xcode的缓存会导致界面加载出错,试试这些操作:

  • 完全关闭Xcode,打开终端执行rm -rf ~/Library/Developer/Xcode/DerivedData清除派生数据;
  • 执行killall Xcode && killall com.apple.CoreSimulator.CoreSimulatorService彻底关闭Xcode和模拟器服务;
  • 重启Mac后再打开项目,看看Capabilities选项是否恢复。
验证原生项目的问题根源

你说创建原生iOS应用也没有这些选项,说明问题大概率不在Flutter项目上:

  • 新建一个纯iOS App项目,Deployment Target设为iOS 13.0,登录付费账号后再去Capabilities里查找;
  • 如果还是没有,建议重新安装Xcode 11.5(从官方渠道下载安装包,避免文件损坏),或者升级到更高版本的Xcode(比如Xcode 12+,兼容性更好)。

内容的提问来源于stack exchange,提问作者VardanMelkonyan

火山引擎 最新活动