带电容器的 Ionic 4:xcodebuild 因手动签名过程而失败

Piz*_*ato 2 xcode azure ios ionic4 capacitor

我正在尝试构建在我的持续集成系统 (Azure) 中使用电容器的 Ionic 应用程序的 iOS 版本。

这是我得到的输出:

/usr/bin/xcodebuild -sdk iphoneos -configuration Release -workspace /Users/runner/runners/2.160.1/work/1/s/ios/App/App.xcworkspace -scheme App build CODE_SIGN_STYLE=Manual CODE_SIGN_IDENTITY=iPhone Distribution: <not_displayed> (ENT) PROVISIONING_PROFILE=5254b426-4af0-45e7-aeab-ec63a303d250 PROVISIONING_PROFILE_SPECIFIER=

Build settings from command line:
CODE_SIGN_IDENTITY = iPhone Distribution: swiss1mobile ag (ENT)
CODE_SIGN_STYLE = Manual
PROVISIONING_PROFILE = 5254b426-4af0-45e7-aeab-ec63a303d250
PROVISIONING_PROFILE_SPECIFIER = 
SDKROOT = iphoneos13.1

note: Using new build system
note: Planning build
note: Constructing build description
error: Capacitor does not support provisioning profiles. Capacitor does not support provisioning profiles, but provisioning profile ent_frontwork has been manually specified. Set the provisioning profile value to "Automatic" in the build settings editor. (in target 'Capacitor' from project 'Pods')
error: CapacitorCordova does not support provisioning profiles. CapacitorCordova does not support provisioning profiles, but provisioning profile ent_frontwork has been manually specified. Set the provisioning profile value to "Automatic" in the build settings editor. (in target 'CapacitorCordova' from project 'Pods')
error: Pods-App does not support provisioning profiles. Pods-App does not support provisioning profiles, but provisioning profile ent_frontwork has been manually specified. Set the provisioning profile value to "Automatic" in the build settings editor. (in target 'Pods-App' from project 'Pods')

** BUILD FAILED **
Run Code Online (Sandbox Code Playgroud)

我一直在寻找很多,但没有运气。有什么线索吗?

Piz*_*ato 6

一些解决方法可以解决此问题。我在 Github 中发现了这个问题,因为 cocoapods 中的更新导致了类似的错误。我觉得它有点hacky,但它有效。我不确定 Azure 是否应该修复其 xcode 任务以避免这些错误,但就目前而言,这已经足够了。

所以修复只是将此代码添加到 Podfile 中:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|
      config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
      config.build_settings['CODE_SIGNING_REQUIRED'] = "NO"
      config.build_settings['CODE_SIGNING_ALLOWED'] = "NO"
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

这样就不必对 pod 进行签名,并且不再显示错误并且构建了应用程序。

  • 您的解决方案帮助我解决了从 Azure Build Pipelines 创建的 Ionic5 iOS 构建上的相同问题。感谢您分享这个 (2认同)