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。 构建按此位置中的构建编号进行组织。

  • 要使用后台进程将stdoutstderr捕获到名为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. ActiveMQ_01

    http://shhyuhan.iteye.com/blog/1278103http://www.cnblogs.com/blsong/archive/2012/09/26/2704337.htmlh ...

  2. php中POST与GET区别

    如果有人问你,GET和POST,有什么区别?你会如何回答? 我的经历 前几天有人问我这个问题.我说GET是用于获取数据的,POST,一般用于将数据发给服务器之用. 这个答案好像并不是他想要的.于是他继 ...

  3. Android开发——View的生命周期总结

    0.前言 今天看到一个概念是View的生命周期,有点懵逼,听说过Activity的生命周期,Fragment的生命周期,对View的生命周期好像没什么概念啊.难道layout.draw这些也算是生命周 ...

  4. 全国城市部分js

    var areaJson22 = { "id": "0", "name": "全国", "parentId&q ...

  5. 地图Legend控件的使用

    http://support.esrichina-bj.cn/2011/0318/1150.html

  6. jenkins 环境搭建与入门示例

    环境说明: 1.win7 2.tomcat 9.0.0.M17 3.jenkins 2.32.2.war jenkins 环境搭建 1.下载jenkins部署包 https://jenkins.io/ ...

  7. 【scala】构造器

    和Java或C++一样,Scala可以有任意多的构造器. 不过Scala类有一个构造器比其他所有构造器都更为重要,它就是主构造器. 除了主构造器之外,类还可以有任意多的辅助构造器. 主构造器 在Sca ...

  8. 【费用流】bzoj1221 [HNOI2001] 软件开发

    几乎为“线性规划与网络流24题”中的餐巾问题. 这里把S看成毛巾的来源,T看成软件公司,我们的目的就是让每天的毛巾满足要求(边满流). 引用题解: [问题分析] 网络优化问题,用最小费用最大流解决. ...

  9. redis memcache rabbitMQ

    Python之路[第九篇]:Python操作 RabbitMQ.Redis.Memcache.SQLAlchemy Memcached Memcached 是一个高性能的分布式内存对象缓存系统,用于动 ...

  10. Elasticsearch: 权威指南(官方教程)

    <Elasticsearch 权威指南>中文版 序言 前言 基础入门 深入搜索 处理人类语言 聚合 地理位置 数据建模 管理.监控和部署