如何在Cordova中进行ad-hoc构建(带有分发证书/配置文件的iOS平台)?

问题描述 投票:1回答:2

我使用了cordova 4.1.1并最近更新了Cordova 7.我无法使用生产配置文件临时构建应用程序。我想使用终端命令创建ipa。

ionic cordova build ios --device --release --buildConfig=./platforms/ios/build.json

构建配置文件是

{
  "ios": {
    "debug": {
      "codeSignIdentity": "iPhone Developer",
      "developmentTeam": "{{Team ID}}",
      "packageType": "development",
      "provisioningProfile": "{{development provisioning profile}}",
      "buildFlag": [
        "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
        "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
        "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
      ]
    },
    "release": {
      "codeSignIdentity": "iPhone Developer",
      "developmentTeam": "{{Team ID}}",
      "packageType": "ad-hoc",
      "provisioningProfile":"{{distribution provisioning profile}}",
      "buildFlag": [
        "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
        "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
        "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
      ]
    }
  }
}

错误是,

Code Signing Error: Provisioning profile "XXXXX Dist Profile" doesn't include signing certificate 
"iPhone Developer: Sachitra Malwatte (XXXX)".

我很迷惑。如果我们正在构建临时构建,为什么我们需要开发证书?

如何使用生产证书和分发配置文件进行构建?无法将开发证书添加到分发配置文件中。

非常感谢帮助。

ios cordova ionic-framework
2个回答
1
投票

嗯。

我正在使用Xcode 9.2。

最新的Cordova文档说即使是发布版本也要使用"codeSignIdentity": "iPhone Developer"。但看起来我们必须使用"codeSignIdentity": "iPhone Distribution"

ad-hoc build使用此构建配置

{
  "ios": {
    "debug": {
      "codeSignIdentity": "iPhone Developer",
      "developmentTeam": "{{Team ID}}",
      "packageType": "development",
      "provisioningProfile": "{{development provisioning profile}}",
      "buildFlag": [
        "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
        "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
        "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
      ]
    },
    "release": {
      "codeSignIdentity": "iPhone Distribution",
      "developmentTeam": "{{Team ID}}",
      "packageType": "ad-hoc",
      "provisioningProfile":"{{distribution provisioning profile}}",
      "buildFlag": [
        "EMBEDDED_CONTENT_CONTAINS_SWIFT = YES",
        "ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES=NO",
        "LD_RUNPATH_SEARCH_PATHS = \"@executable_path/Frameworks\""
      ]
    }
  }
}

浪费了很多时间来解决这个问题:(


0
投票

首先必须为ios构建项目:

离子构建ios然后你必须打开(使用Xcode)由ionic build ios命令生成的.xproj项目(你将看到命令输出中的确切位置)。

现在,您必须将iPhone连接到Mac计算机,并且您将能够选择iPhone作为“部署”设备。

点击在Xcode中运行,在Xcode完成指导您创建配置文件后,您将在手机上安装该应用程序。

欲了解更多信息,请查看https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/AppDistributionGuide/LaunchingYourApponDevices/LaunchingYourApponDevices.html

© www.soinside.com 2019 - 2024. All rights reserved.