ios - XcodeBuild 需要 Target 的配置文件吗?错误域=IDEProvisioningErrorDomain 代码=9

标签 ios code-signing provisioning-profile xcodebuild xcode10

希望这只是一些用户错误,但我认为 xcodebuild 似乎找不到目标的配置文件,我将其称为 MyApp,MyApp.app 是我认为的目标

我更新了我的配置文件,删除了所有配置文件并重新添加了我的配置文件,检查了苹果开发门户并确保一切正常。我已经查看了build设置和签名信息,但没有找到我所知道的或同行告知的任何有效的或需要修复的内容。我已经清理、重新启动、尝试过 faSTLane,现在我只是使用 xcodebuild。这是我的错误:

sudo xcodebuild -exportArchive -exportOptionsPlist 
"/Users/MyName/MyApp-ios/ExportOptions.plist" -archivePath 
'/Users/MyName/Library/Developer/Xcode/Archives/2019-02-20/MyApp             
2019-02-20 15.34.28.xcarchive' -exportPath         
"/path/MyApp.ipa" -allowProvisioningUpdates
2019-02-22 09:39:26.044 xcodebuild[15743:239787] [MT] IDEDistribution: 
-[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle 
at path '/var/folders/zz/zyxvpxvq6csfxvn_n0000000000000/T/DEV_2019-02- 
22_09-39-26.043.xcdistributionlogs'.
error: exportArchive: "MyApp.app" requires a provisioning profile.

Error Domain=IDEProvisioningErrorDomain Code=9 ""MyApp.app" requires a 
provisioning profile." UserInfo={NSLocalizedDescription="MyApp.app" 
requires a provisioning profile., NSLocalizedRecoverySuggestion=Add a 
profile to the "provisioningProfiles" dictionary in your Export Options 
property list.}

我将 MyApp.app 和 MyApp 添加到我的配置文件字典中,但它不起作用,我只是想构建我的开发方案/配置。使用 GUI 从成功的存档/构建中获取 exportOptions.plist 也没有。

导出选项

<plist version="1.0">
<dict>
    <key>compileBitcode</key>
    <false/>
    <key>destination</key>
    <string>export</string>
    <key>method</key>
    <string>enterprise</string>
    <key>provisioningProfiles</key>
    <dict>
        <key>com.mycompany.myappDEV</key>        
        <string>*********UUID**********</string>
        <key>com.mycompany.myappQA</key>
        <string>*********UUID**********</string>
        <key>com.mycompany.myappPROD</key>
        <string>*********UUID**********</string>
    </dict>
    <key>signingCertificate</key>
    <string>iPhone Distribution</string>
    <key>signingStyle</key>
    <string>manual</string>
    <key>stripSwiftSymbols</key>
    <true/>
    <key>teamID</key>
    <string>XXXXXXXXX</string>
    <key>thinning</key>
    <string>&lt;none&gt;</string>
</dict>
</plist>

如何为我的目标设置配置文件?或者这里出了什么问题。

最佳答案

我每天都在学习很多东西,但幸运的是,一位高级开发人员能够帮助我弄清楚如何让 xcodebuild 为我工作。我使用的是 Xcode 10.0

  1. 似乎在Build Settings中,我在Packaging中的包标识符只需要包含基本的包标识符,com.mycompany.app,不能添加DEV/QA/TEST后缀,否则将无法构建.ipa文件

  2. 我公司的配置文件有很多。我们为每个环境都有一个,但事实证明我们有一个包罗万象的配置文件,我们的应用程序宁愿使用com.mycompany.*我在那里还有更多的学习要做。

  3. 我使用了 faSTLane,这是我最初想要做的,我认为要使用 xcodebuild,我需要在那里插入配置文件 UUID 作为参数。这是我的快速文件中的新 build_ios_app() ,它可以让我构建。 FaSTLane 和 xcodebuild 将覆盖 xcode 和 exportoptions.plist 中的任何配置文件数据以及其他内容,例如 export_method。通过输入PROVISIONING_PROFILE_SPECIFIER,您可以省去一些麻烦。

    build_app(
        workspace: "myapp.xcworkspace",
        scheme: "DEV",
        export_method: "enterprise",
        export_options: {
        signingStyle: 'manual',
        provisioningProfiles: {
            "com.mycompany.myapp" => "*****UUID*****"
        }       
    }, 
    xcargs: "PROVISIONING_PROFILE_SPECIFIER=\"*****UUID*****\""
    

    )

关于ios - XcodeBuild 需要 Target 的配置文件吗?错误域=IDEProvisioningErrorDomain 代码=9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54829942/

相关文章:

ios - 在没有互联网连接的情况下在 iOS 应用程序中使用来自数据库的图像

macos - 使用开发者 ID 在 Mac 上签署 Qt 应用程序

ios - 找不到与应用程序标识符匹配的有效配置文件

ios - 如何将 iOS 设备添加到多个配置文件?

ios - 撤消 iOS 证书吊销

iphone - 通过 Socket 发送文件 (iOS)

ios - 在 iOS6 中进入全屏后 MPMoviePlayerController 中断/停止

ios - 可选绑定(bind)的值(value)超出范围?

ios - Cordova faSTLane xcode 8 配置文件

ios - 验证到应用程序商店。无效的代码签名权利。云端