Phonegap IOS 与 build.json 签约

Phonegap IOS Signing with build.json

我最初是使用 Phonegap 构建服务来创建我的 "debug" 应用程序,它需要一个 .p12 文件和一个配置文件,但现在它们几乎已准备好投入生产,我正在使用一个结合挂钩的脚本使用 Phonegap cli 6.4

在本地构建我的 "release" 应用程序
phonegap build --release --buildConfig build.json

我在命令行中遇到这个错误

Error: Error code 65 for command: xcodebuild with args: 
-xcconfig,/Users/cuesta/workspace/mobile/platforms/ios/cordova/build-release.xcconfig,-workspace,myappname.xcworkspace,-scheme,myappname,-configuration,Release,-sdk,iphonesimulator,-destination,platform=iOS Simulator,name=iPhone 5s,build,CONFIGURATION_BUILD_DIR=/Users/cuesta/workspace/mobile/platforms/ios/build/emulator,SHARED_PRECOMPS_DIR=/Users/cuesta/workspace/mobile/platforms/ios/build/sharedpch

此命令失败后

CompileAssetCatalog build/emulator/myappname.app myappanem/Images.xcassets

我的猜测是我的 build.json 配置错误 IOS 构建。所以我的问题是:

-- 我在哪里可以找到 "codeSignIdentity" 或者请解释以下内容。

Code signing identity to use for signing. It can be created with Xcode and added to your keychain. https://cordova.apache.org/docs/en/latest/guide/platforms/ios/

-- 开发团队是我放"teamId"的地方吗?

-- 有没有可能我的 "teamId" 生成的和我的 app id 前缀完全一样?

我确实有一个产品证书(导出到 .p12)和准备好产品供应文件。 (下面的模板)

"ios": {
    "debug": {
        "codeSignIdentity": "iPhone Development",
        "provisioningProfile": "confirmedcorrect",
        "developmentTeam": "10or12",
        "packageType": "development"
    },
    "release": {
        "codeSignIdentity": "iPhone Distribution",
        "provisioningProfile": "confirmedcoorect",
        "developmentTeam": "10or12",
        "packageType": "app-store"
    }
}

这么多问题,我不知道该回答什么,所以让我们试着一一回答...

我在哪里可以找到 "codeSignIdentity"?

你是说类似的东西吗?

security find-identity -v -p codesigning

它将return所有共同签名身份。

开发组是我放的吗"teamId"?

是的。如果您不确定 ID,请查看 https://developer.apple.com/account/#/membership

有没有可能我的"teamId"生成的和我的app id前缀完全一样?

是的。

注意latest (dev) revision of the documentation中的信息build.json信息已经改变。新格式如下:

{
    "ios": {
        "debug": {
            "codeSignIdentity": "iPhone Developer",
            "developmentTeam": "FG35JLLMXX4A",
            "packageType": "development",
            "buildFlag": [
                "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
                "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
                "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
            ]
        },
        "release": {
            "codeSignIdentity": "iPhone Developer",
            "developmentTeam": "FG35JLLMXX4A",
            "packageType": "app-store",
            "buildFlag": [
                "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
                "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
                "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
            ]
        }
    }
}

我不确定这是否回答了你所有的问题,但至少应该澄清了一些问题。