Visual Studio 2015
 

Visual Studio文档的新家是docs.microsoft.com上的Visual Studio 2017文档 。

有关Visual Studio 2017的最新文档,请参阅在docs.microsoft.com上使用iOS安装和配置要构建的工具 。 您可以使用Visual C ++进行跨平台移动开发来编辑,调试和将iOS代码部署到iOS模拟器或iOS设备,但由于许可限制,代码必须在Mac上远程构建和运行。 要使用Visual Studio构建和运行iOS应用程序,您需要在Mac上设置和配置远程代理程序vcremote 。 远程代理处理来自Visual Studio的构建请求,并在连接到Mac的iOS设备上或Mac上的iOS模拟器上运行应用程序。

 注意

有关使用云托管的Mac服务而不是Mac的信息,请参阅在云中构建和模拟iOS 。 这些说明适用于使用适用于Apache Cordova的Visual Studio工具进行构建。 要使用说明构建使用Visual C ++进行跨平台移动开发,请将vcremote替换为vs-mda-remote。

一旦安装了使用iOS构建的工具,请参阅本主题了解如何在Visual Studio和Mac上快速配置和更新iOS开发的远程代理。

先决条件

安装适用于iOS的远程代理

启动远程代理

在Visual Studio中配置远程代理

生成一个新的安全PIN码

生成一个新的服务器证书

在Mac上配置远程代理

先决条件

 
 

要安装和使用远程代理为iOS开发代码,必须先具备以下先决条件:

  • 运行OS X Mavericks或更高版本的Mac电脑

  • Apple ID

  • Apple的一个活跃的iOS开发人员计划帐户

  • Xcode 6

    Xcode 6可以从App Store下载。

  • Xcode命令行工具

    要安装Xcode命令行工具,请在Mac上打开终端应用程序并输入以下命令:

    xcode-select --install

  • 在Xcode中配置的iOS签名身份

    有关获取iOS签名标识的详细信息,请参阅iOS开发者库中的维护签名标识和证书 。 要在Xcode中查看或设置您的签名身份,请打开Xcode菜单并选择首选项 。 选择帐户并选择您的Apple ID,然后选择查看详细信息按钮。

  • 如果您正在使用iOS设备进行开发,则会在Xcode中为您的设备配置供应配置文件

    有关创建配置配置文件的详细信息,请参阅在iOS开发人员库中使用成员中心创建配置配置文件 。

  • Node.js的

  • npm的更新版本

    Node.js附带的npm版本可能不足以安装vcremote。 要更新npm,请在Mac上打开终端应用程序并输入以下命令:

    sudo npm install -g npm@latest

当您为跨平台移动开发安装Visual C ++时,Visual Studio可以与vcremote通信,在Mac上运行的远程代理可以传输文件,构建和运行iOS应用程序并发送调试命令。

在安装远程代理之前,请确保您已满足先决条件并安装了用于跨平台移动开发的Visual C ++ 。

下载并安装远程代理

  • 从Mac上的终端应用程序中,输入:

    sudo npm install -g --unsafe-perm vcremote

    建议使用全局安装( -g )开关,但不是必需的。

    在安装过程中,vcremote已安装,并且在您的Mac上激活了开发人员模式。 Homebrew和两个npm软件包,vcremote-lib和vcremote-utils也被安装。

     注意

    要安装Homebrew,您必须具有sudo(管理员)访问权限。 如果您需要在不使用sudo的情况下安装vcremote,则可以手动将Homebrew安装在usr / local位置,并将其bin文件夹添加到您的路径中。 有关更多信息,请参阅Homebrew文档 。 要手动启用开发人员模式,请在终端应用程序中输入以下命令: DevToolsSecurity –enable

如果更新到Visual Studio的新版本,则还必须更新到当前版本的远程代理。 要更新远程代理,请重复这些步骤以下载并安装远程代理。

远程代理必须运行Visual Studio才能生成并运行您的iOS代码。 Visual Studio必须先与远程代理配对,然后才能进行通信。 默认情况下,远程代理以安全连接模式运行,这需要PIN与Visual Studio配对。

启动远程代理

  • 从Mac上的终端应用程序中,输入:

    vcremote

    这将启动具有〜/ vcremote默认构建目录的远程代理。 有关其他配置选项,请参阅在Mac上配置远程代理 。

首次启动代理程序时,以及每次创建新客户端证书时,都会向您提供在Visual Studio中配置代理程序所需的信息,包括主机名,端口和PIN。

如果您打算使用主机名在Visual Studio中配置远程代理,请使用主机名从Windows ping Mac,以验证它是否可访问。 否则,您可能需要使用IP地址。

生成的PIN码一次性使用,仅在有限的时间内有效。 如果您在时间到期之前未将Visual Studio与远程代理配对,则需要生成新的PIN。 有关更多信息,请参阅生成新的安全PIN 。

您可以在不安全模式下使用远程代理。 在不安全模式下,远程代理可以与无需PIN的Visual Studio配对。

禁用安全连接模式

  • 要在vcremote中禁用安全连接模式,请在Mac上的终端应用程序中输入以下命令:

    vcremote --secure false

启用安全连接模式

  • 要启用安全连接模式,请输入以下命令:

    vcremote --secure true

一旦你启动了远程代理,你可以在Visual Studio中使用它,直到你停止它为止。

停止远程代理

  • 在运行终端窗口vcremote中,输入Control+C

要从Visual Studio连接到远程代理,必须在Visual Studio选项中指定远程配置。

从Visual Studio配置远程代理

  1. 如果代理程序尚未在Mac上运行,请按照启动远程代理程序中的步骤进行操作。 您的Mac必须运行Visual Studio的vcremote才能成功配对,连接并构建您的项目。

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

    您可以通过在终端窗口中使用ifconfig命令来获取IP地址。 使用活动网络接口下列出的inet地址。

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

  4. 在“ 选项”对话框中,展开“ 跨平台” , C ++ , iOS 。

  5. 在“ 主机名”和“ 端口”字段中,输入启动时由远程代理指定的值。 主机名称可以是Mac的DNS名称或IP地址。 默认端口是3030。

     注意

    如果您无法使用主机名称ping Mac,则可能需要使用IP地址。

  6. 如果您在默认安全连接模式下使用远程代理,请选中安全复选框,然后在Pin字段中输入由远程代理指定的PIN值。 如果您在不安全的连接模式下使用远程代理,请清除安全复选框并将引脚字段留空。

  7. 选择配对以启用配对。

    配对一直存在,直到您更改主机名或端口。 如果在“ 选项”对话框中更改主机名或端口,要撤消更改,请选择“ 恢复”按钮以恢复到先前的配对。

    如果配对不成功,请按照启动远程代理中的步骤验证远程代理是否正在运行。 如果自生成远程代理程序PIN码以来已过去太多时间,请按照Mac上生成新安全PIN码中的步骤操作,然后重试。 如果您使用的是Mac的主机名,请尝试在主机名字段中使用IP地址。

  8. 更新远程根目录字段中的文件夹名称,以指定Mac上的主目录(〜)中的远程代理所使用的文件夹。 默认情况下,远程代理使用/ Users / username / vcremote作为远程根目录。

  9. 选择确定保存远程配对连接设置。

每次使用时,Visual Studio都使用相同的信息连接到Mac上的远程代理。 除非您在Mac上生成新的安全证书或其主机名或IP地址更改,否则不需要再次将Visual Studio与远程代理配对。

第一次启动远程代理时,生成的PIN在有限的时间内有效 - 默认情况下为10分钟。 如果您在时间到期之前未将Visual Studio与远程代理配对,则需要生成新的PIN。

生成新的PIN码

  1. 停止代理,或在Mac上打开第二个终端应用程序窗口,然后使用它输入命令。

  2. 在终端应用程序中输入此命令:

    vcremote generateClientCert

    远程代理生成新的临时PIN。 要使用新的PIN配对Visual Studio,请重复在Visual Studio中配置远程代理中的步骤。

出于安全考虑,将Visual Studio与远程代理配对的服务器证书绑定到Mac的IP地址或主机名。 如果这些值更改,则必须生成新的服务器证书,然后使用新值重新配置Visual Studio。

生成新的服务器证书

  1. 停止vcremote代理。

  2. 在终端应用程序中输入此命令:

    vcremote resetServerCert

  3. 当提示确认时,输入Y

  4. 在终端应用程序中输入此命令:

    vcremote generateClientCert

    这会生成一个新的临时PIN码。

  5. 要使用新的PIN配对Visual Studio,请重复在Visual Studio中配置远程代理中的步骤。

您可以使用各种命令行选项配置远程代理。 例如,您可以指定端口来侦听构建请求,并指定要在文件系统上维护的最大构建数量。 默认情况下,限制为10个构建。 远程代理将删除在关闭时超过最大值的构建。

配置远程代理

  • 要查看远程代理命令的完整列表,请在终端应用程序中输入:

    vcremote --help

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

    vcremote --secure false

    使用此选项时,请清除安全复选框,并在Visual Studio中配置代理时将引脚字段留空。

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

    vcremote --serverDir directory_path

    其中directory_path是Mac上放置日志文件,构建版本和服务器证书的位置。 默认情况下,此位置是/ Users / username / vcremote。 构建按此位置中的构建编号进行组织。

  • 要使用后台进程将stdout和stderr捕获到名为server.log的文件,请输入:

    vcremote > server.log 2>&1 &

    server.log文件可以帮助解决构建问题。

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

    vcremote --config config_file_path

    其中config_file_path是JSON格式的配置文件的路径。 启动选项及其值不能包含破折号。

安装Visual C ++进行跨平台移动开发

安装并配置工具以使用iOS进行构建的更多相关文章

  1. 开始使用 Manjaro(添加源+字体渲染去模糊+软件安装+优化配置+常见错误)(30)

    1. 添加 archlinux 镜像源 1. 步骤一 向 /etc/pacman.d/mirrorlist 中添加国内镜像地址 1.1 方法1:自动添加 1. 输入如下命令查看国内镜像源,并按质量排序 ...

  2. 学习安装并配置前端自动化工具Gulp

    Gulp和所有Gulp插件都是基于nodeJs来运行的,因此在你的电脑上需要安装nodeJs,安装过程请移驾安装并配置前端自动化工具--grunt.安装完成后,通过运行cmd进入DOS命令窗口,如图: ...

  3. 必须使用“角色管理工具”安装或配置Microsoft .NET Framework 3.5 SP1

    在Windows Server 2008下直接安装SQL Server 2008时,会出现如下错误: 必须使用“角色管理工具”安装或配置Microsoft .NET Framework 3.5 SP1 ...

  4. 解决【必须使用“角色管理工具”安装或配置Microsoft .NET Framework 3.5 SP1】的方法

    [摘要:正在Windows Server 2008下间接装置SQL Server 2008时,会涌现以下毛病: 必需应用“脚色治理对象”装置或设置装备摆设Microsoft .NET Framewor ...

  5. Oracle 客户端安装 + pl/sql工具安装配置

    Oracle 客户端安装 +  pl/sql工具安装配置 下载oracle客户端,并在本地安装. 11g下载地址为: http://www.oracle.com/technetwork/databas ...

  6. windows Server 2008 -必须使用“角色管理工具”安装或配置Microsoft .Net Framework 3.5

    在windows Server 2008上安装 .Net Framework 3.5的时候,报错:必须使用“角色管理工具”安装或配置Microsoft .Net Framework 3.5. Solu ...

  7. Minicom串口工具安装及配置

    Minicom串口工具安装及配置 1. 简述 嵌入式开发多采用串口线连接电脑进行开发及调试. 2 安装及配置串口工具(以Minicom为例) Tiny4412开发板提供的有RS232电平的DB9公头接 ...

  8. ③---Java项目管理工具MAVEN安装与配置

    Java项目管理工具MAVEN安装配置以下将为大家介绍Java项目管理工具MAVEN安装及其配置. 一.下载MAVEN安装文件 maven下载地址:https://maven.apache.org/d ...

  9. 端口转发工具rinetd的安装与配置

    端口映射和转发在实际应用中非常常见,比如一个局域网只有一台服务器可以被互联网访问到,那么如果想通过互联网访问局域网中其他的服务,最常用的方式就是在这一台机器上开放端口,然后转发至局域网中其他主机的端口 ...

随机推荐

  1. Hibernate -- 操作持久化对象

    知识点2: session概述 Session 接口是 Hibernate 向应用程序提供的操纵对数据库的最主要的接口,它提供了基本的保存,更新, 删除和加载Java对象的方法. 知识点3:理解ses ...

  2. NumPy来自数值范围的数组

    NumPy - 来自数值范围的数组 这一章中,我们会学到如何从数值范围创建数组. numpy.arange 这个函数返回ndarray对象,包含给定范围内的等间隔值. numpy.arange(sta ...

  3. 从TensorFlow 到 Caffe2:盘点深度学习框架

    机器之心报道 本文首先介绍GitHub中最受欢迎的开源深度学习框架排名,然后再对其进行系统地对比 下图总结了在GitHub中最受欢迎的开源深度学习框架排名,该排名是基于各大框架在GitHub里的收藏数 ...

  4. jsonp跨域传过来的数据格式

    var uri1 = 'https://api.github.com?callback=JSON_CALLBACK'; /**/JSON_CALLBACK({ "meta": { ...

  5. 四十一 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)基本的索引和文档CRUD操作、增、删、改、查

    elasticsearch(搜索引擎)基本的索引和文档CRUD操作 也就是基本的索引和文档.增.删.改.查.操作 注意:以下操作都是在kibana里操作的 elasticsearch(搜索引擎)都是基 ...

  6. 同步容器类ConcurrentHashMap及CopyOnWriteArrayList

    ConcurrentHashMap Java5在java.util.concurrent包中提供了多种并发容器类来改进同步容器的性能.其中应用最为广泛的为ConcurrentHashMap,Concu ...

  7. 使用ZooKeeper实现Java跨JVM的分布式锁(优化构思)

    一.使用ZooKeeper实现Java跨JVM的分布式锁 二.使用ZooKeeper实现Java跨JVM的分布式锁(优化构思) 三.使用ZooKeeper实现Java跨JVM的分布式锁(读写锁) 说明 ...

  8. 010-对象——构造方法__construct析构方法__destruct使用方法 PHP重写与重载

    <?php /*抽象方法和抽象类 抽象类必须通过子类继承之后,才能实现实例化. 类中有抽象方法,必须声明抽象类. 如果是抽象类,可以没有抽象方法,但必须通过子类去继承之后,实现实例化 final ...

  9. 条款19:定义class就相当于定义一个个的内置类型

    下面的条框应该是谨记的: 1. 新的type应该如何创建与销毁 2. 对象的初始化与赋值应该有什么样的区别 3. 新type的对象如果被pass-by-value,有什么影响? 4. 什么事新type ...

  10. HData——ETL 数据导入/导出工具

    HData是一个异构的ETL数据导入/导出工具,致力于使用一个工具解决不同数据源(JDBC.Hive.HDFS.HBase.MongoDB.FTP.Http.CSV.Excel.Kafka等)之间数据 ...