安装工具以创建针对 iOS 的应用

这篇文章介绍了用于 Apache Cordova 的 Visual Studio 工具,是一个预发布的软件。所述功能呈现在预览版中,并可能会发生更改。你可以从 Microsoft 下载中心下载预览版。

若要使用 Visual Studio 在 iOS 模拟器或 iOS 设备上创建和运行 iOS 应用,你必须在一台满足以下要求的 Mac 计算机上安装并配置远程代理 vs-mda-remote。 (目前无法在 Windows 上创建 iOS 应用。)在 PC 上的 Visual Studio 中,也必须按本主题所述配置远程代理。

备注

如果你使用了虚拟化技术在 Mac 上运行 Windows,你就可以在本地创建和运行 iOS 应用。有关详细信息,请参阅使用 Parallels 生成适用于 iOS 的 Cordova 应用。有关使用云托管 Mac 服务而非 Mac 的信息,请参阅在云中生成和模拟 iOS

安装远程代理之前,请确保安装了适用于 Apache Cordova 的 Visual Studio 工具

安装并配置用于创建和模拟 iOS 的远程代理

你可以配置代理以处理创建要求并在 iOS 设备或 iOS 模拟器上运行应用。 若要托管远程代理,Mac 计算机必须安装以下各项:

  • Mac OS X Mavericks

  • Xcode 6

  • Xcode 命令行工具(从终端应用使用 xcode-select --install)

  • Node.js

还必须具有以下条件:

  • Apple 提供的活动 iOS 开发人员计划帐户

  • 在 Xcode 中配置的 iOS 设置配置文件(下载该设置配置文件并运行下载的 *.cer 文件)

    备注

    有关详细信息,请参阅 iOS 开发者库中的维护你的签名标识和证书

  • 在 Xcode 中配置的签名标识(选择“XCode”、“首选项”)

若要下载和安装远程代理

  • 在你 Mac 上的终端应用中输入:

    sudo npm install -g vs-mda-remote --user=$USER
    

    其中,$USER 将被 Mac 上的用户名替代。 当你运行这个命令时,系统将提示你输入密码。

    全局安装 (-g) 开关是推荐使用而不是必须使用的。

    在安装期间,vs-mda-remote 将被安装在你的 Mac 上,同时将激活开发人员模式。 Homebrew和两个 npm 程序包也将被安装。

    警告

    要安装 Homebrew,你需要以其他身份(管理员)访问。如果你不想以其他身份安装 vs-mda-remote,你可以在 usr/local 位置手动安装 Homebrew 并将其 bin 文件夹添加到你的路径。有关更多信息,请参见Homebrew 文档。如果需要手动启用开发人员模式,请在终端应用中键入以下内容:DevToolsSecurity –enable

如果你将计算机升级到了新版本的 Visual Studio,那么你必须也将远程代理升级到最新版本。

若要更新远程代理

  • 再次执行之前章节中的安装步骤。

若要启动远程代理

  • 在你 Mac 上的终端应用中输入:

    vs-mda-remote
    

    这将启动默认构建目录 ~/remote-builds 的代理。 代理的额外配置选项在本话题中稍后描述。

    当你第一次启动代理时,将向你提供所需的信息在 Visual Studio 中配置代理,包括主机、端口和安全码。

    首次启动远程代理时输出

    重要

    该版本中的更新是 vs-mda-remote 被设计来使用 PIN 从 Visual Studio 来回安全传递构建负载。

  • 如果你打算在 Visual Studio 上使用主机名配置远程代理,请使用主机名 ping Mac,以确认它是可连接的。 否则,你可能需要使用 IP 地址。

必须先在 Visual Studio 中指定远程配置才能使用远程代理。

若要在 Visual Studio 中配置远程代理

  1. 如果代理未在你的 Mac 上运行,请启动远程代理。

  2. 在你的 Mac 上,获取你的 Mac 的主机名或 IP 地址。

    可以通过使用ifconfig命令获取 IP 地址。

  3. 在 Visual Studio 菜单栏上依次选择“工具”和“选项”。

  4. 选项对话框中,打开适用于 Apache Cordova 的工具,然后选择远程代理配置

  5. 将“启用远程 iOS 处理”设置为“真”。

  6. 主机端口安全码字段,输入你第一次启动它时远程代理指定的值。 主机可以是你的 Mac 的名称或 IP 地址。 默认端口为 3000。

    在 Visual Studio 中配置远程代理

    备注

    如果你不能使用主机名 ping 到 Mac,你可能需要使用 IP 地址。

    当你点击确定时,Visual Studio 将连接到远程代理(代理必须运行以进行连接)。

    如果你想禁用安全模式和启用简单的基于 HTTP 的连接,请在终端应用程序中输入以下命令:

    vs-mda-remote --secure false
    

    然后当在 Visual Studio 中配置代理时,你可以把安全码字段保留空白。

若要停止代理

  • 在你 Mac 上的终端应用中按下 Ctrl+C。

当你第一次启动代理时,生成的密码在有限的时间(默认 10 分钟)内有效。 如果你未在时间到期之前连接到代理,你将需要生成一个新的识别码。

要生成新的安全码

  1. 停止代理(或在你的 Mac 上打开另一个终端应用窗口并使用它输入命令)。

  2. 在你 Mac 上的终端应用中输入:

    vs-mda-remote generateClientCert
    

出于安全目的,把 Visual Studio 与远程代理配对的服务器证书关联到你的 Mac 的 IP 或主机名。 如果这些值已更改,你将需要生成一个新的服务器证书,然后使用新值重新配置 Visual Studio。

要生成新的服务器证书

  1. 停止代理。

  2. 在你 Mac 上的终端应用中输入:

    vs-mda-remote resetServerCert
    
  3. 当出现提示时,输入“Y”,然后输入回车。

  4. 在你 Mac 上的终端应用中输入:

    vs-mda-remote generateClientCert
    
  5. 按照上面的说明输入新的安全码和 IP 或主机信息。

你可以使用各种命令行选项配置远程代理。 例如,你可以指定用于接收版本请求的端口以及要在文件系统上进行维护的最大版本数量。 (此限制默认为 10。 代理会在关机时删除超过最大数量的版本。)

警告

从vs-mda-remote 0.2 版开始,一些选项已经更改。最重要的更改是 --buildDir 选项被重命名为 --serverDir。

若要配置远程代理

  • 要查看代理命令的完整列表,请输入:

    vs-mda-remote --help
    
  • 要禁用安全模式并启用简单的基于 HTTP 的连接,请输入:

    vs-mda-remote --secure false
    

    当你使用此选项时,在 Visual Studio 中配置代理时,你可以把安全码字段保留空白。

  • 要为远程代理文件指定位置,请输入:

    vs-mda-remote --serverDir <directory>
    

    其中的<路径>是日志文件、构建和服务器证书将放置在你的 Mac 中的位置。 例如,位置可以为 /Users/username/builds。 (该位置中的版本会按照版本号进行整理。)

  • 若要使用后台进程来将 stdout 和 stderr 捕获至文件 (server.log),请输入:

    vs-mda-remote > server.log 2>&1 &
    

    server.log 文件可能有助于解决版本问题。

  • 若要使用配置文件而不是命令行参数来运行代理,请输入:

    vs-mda-remote --config <path-to-config-file>
    

    配置文件的格式必须为 JSON。 启动选项及其值不得包含短划线。 若要查看示例的配置文件,请在远程代理安装目录中查看 vs-mda-remote/examples/exampleConfig.json 文件夹。 例如,路径可能为 /usr/local/lib/node_modules/vs-mda-remote/examples/exampleConfig.json。

若要验证远程代理配置

  • 在远程代理正在运行时,打开第二个终端应用窗口(选择“Shell”、“新窗口”)。

  • 在你 Mac 上的第二个终端应用窗口中输入:

    vs-mda-remote test
    

    重要

    如果代理没有在第二个窗口中运行,则该命令就会失败。

    该命令会启动一个测试版本。 命令的输出应该显示版本号和其他关于版本的信息,例如版本的进度。

    启动测试版本后,验证该版本。

  • 如果你在一个不是 3000 的端口上启动了服务器,请使用以下命令来启动测试版本:

    vs-mda-remote test https://localhost:<portNumber>
    
  • 若要验证是否为设备版本正确设置了开发者签名标识(使用 Visual Studio 中的“调试”和“发布”配置),请输入:

    vs-mda-remote test --device
    
  • 若要验证是否为设备版本正确设置了分发签名标识(使用 Visual Studio 中的“分发”配置),请输入:

    vs-mda-remote test --device --cfg distribution
    

    有关应用配置和证书签名标识,请参阅将用 Visual Studio Tools for Apache Cordova 生成的应用打包

在某些情况下,你可能需要访问生成的 Xcode 项目对本机问题进行故障排除。 幸运的是你可以快速访问用于构建应用的项目。

要访问生成的 Xcode 项目

  1. 使用 iOS 模拟器或设备目标构建你的应用。

  2. 完成生成后,请转至“输出”窗口,选择“显示输出来源: 生成”。

    构建输出的最后条目应类似于:

    1>  ** BUILD SUCCEEDED **
    1>  
    1>  Command finished with error code 0: /Users/<username>/remote-builds/builds/8382/cordovaApp/platforms/ios/cordova/build --debug
    
  3. 在你的 Mac 上,导航到构建输出指定的路径中的 ios 文件夹。 在上面的例子中,这是 /Users/<username>/remote-builds/builds/8382/cordovaApp/platforms/ios

    重要

    当 vs-mda-remote 代理停止时,将删除该生成(包括生成的 xcode 项目),除非你使用以下命令启动了 vs-mda-remote:--deleteBuildsOnShutdown false.

  4. 双击此文件夹中的 .xcodeproj 文件,项目将在 Xcode 中打开。

请参见

概念

安装 Visual Studio Tools for Apache Cordova

在 iOS 上运行你的 Apache Cordova 应用