Visual Studio文檔的新家是docs.microsoft.com上的Visual Studio 2017文檔 。html
有關Visual Studio 2017的最新文檔,請參閱在docs.microsoft.com上使用iOS安裝和配置要構建的工具 。 您可使用Visual C ++進行跨平臺移動開發來編輯,調試和將iOS代碼部署到iOS模擬器或iOS設備,但因爲許可限制,代碼必須在Mac上遠程構建和運行。 要使用Visual Studio構建和運行iOS應用程序,您須要在Mac上設置和配置遠程代理程序vcremote 。 遠程代理處理來自Visual Studio的構建請求,並在鏈接到Mac的iOS設備上或Mac上的iOS模擬器上運行應用程序。node
![]() |
---|
有關使用雲託管的Mac服務而不是Mac的信息,請參閱在雲中構建和模擬iOS 。 這些說明適用於使用適用於Apache Cordova的Visual Studio工具進行構建。 要使用說明構建使用Visual C ++進行跨平臺移動開發,請將vcremote替換爲vs-mda-remote。ios |
一旦安裝了使用iOS構建的工具,請參閱本主題了解如何在Visual Studio和Mac上快速配置和更新iOS開發的遠程代理。git
先決條件github
啓動遠程代理xcode
生成一個新的安全PIN碼服務器
要安裝和使用遠程代理爲iOS開發代碼,必須先具有如下先決條件:
-
運行OS X Mavericks或更高版本的Mac電腦
-
Apple的一個活躍的iOS開發人員計劃賬戶
-
Xcode 6能夠從App Store下載。
-
Xcode命令行工具
要安裝Xcode命令行工具,請在Mac上打開終端應用程序並輸入如下命令:
xcode-select --install
-
在Xcode中配置的iOS簽名身份
有關獲取iOS簽名標識的詳細信息,請參閱iOS開發者庫中的維護簽名標識和證書 。 要在Xcode中查看或設置您的簽名身份,請打開Xcode菜單並選擇首選項 。 選擇賬戶並選擇您的Apple ID,而後選擇查看詳細信息按鈕。
-
若是您正在使用iOS設備進行開發,則會在Xcode中爲您的設備配置供應配置文件
有關建立配置配置文件的詳細信息,請參閱在iOS開發人員庫中使用成員中心建立配置配置文件 。
-
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配置遠程代理
-
若是代理程序還沒有在Mac上運行,請按照啓動遠程代理程序中的步驟進行操做。 您的Mac必須運行Visual Studio的vcremote才能成功配對,鏈接並構建您的項目。
-
在您的Mac上,獲取Mac的主機名或IP地址。
您能夠經過在終端窗口中使用ifconfig命令來獲取IP地址。 使用活動網絡接口下列出的inet地址。
-
在Visual Studio菜單欄上,選擇「 工具」 ,「 選項」 。
-
在「 選項」對話框中,展開「 跨平臺」 , C ++ , iOS 。
-
在「 主機名」和「 端口」字段中,輸入啓動時由遠程代理指定的值。 主機名稱能夠是Mac的DNS名稱或IP地址。 默認端口是3030。
注意
若是您沒法使用主機名稱ping Mac,則可能須要使用IP地址。
-
若是您在默認安全鏈接模式下使用遠程代理,請選中安全複選框,而後在Pin字段中輸入由遠程代理指定的PIN值。 若是您在不安全的鏈接模式下使用遠程代理,請清除安全複選框並將引腳字段留空。
-
選擇配對以啓用配對。
配對一直存在,直到您更改主機名或端口。 若是在「 選項」對話框中更改主機名或端口,要撤消更改,請選擇「 恢復」按鈕以恢復到先前的配對。
若是配對不成功,請按照啓動遠程代理中的步驟驗證遠程代理是否正在運行。 若是自生成遠程代理程序PIN碼以來已過去太多時間,請按照Mac上生成新安全PIN碼中的步驟操做,而後重試。 若是您使用的是Mac的主機名,請嘗試在主機名字段中使用IP地址。
-
更新遠程根目錄字段中的文件夾名稱,以指定Mac上的主目錄(〜)中的遠程代理所使用的文件夾。 默認狀況下,遠程代理使用/ Users /
username
/ vcremote做爲遠程根目錄。 -
選擇肯定保存遠程配對鏈接設置。
每次使用時,Visual Studio都使用相同的信息鏈接到Mac上的遠程代理。 除非您在Mac上生成新的安全證書或其主機名或IP地址更改,不然不須要再次將Visual Studio與遠程代理配對。
第一次啓動遠程代理時,生成的PIN在有限的時間內有效 - 默認狀況下爲10分鐘。 若是您在時間到期以前未將Visual Studio與遠程代理配對,則須要生成新的PIN。
生成新的PIN碼
-
中止代理,或在Mac上打開第二個終端應用程序窗口,而後使用它輸入命令。
-
在終端應用程序中輸入此命令:
vcremote generateClientCert
遠程代理生成新的臨時PIN。 要使用新的PIN配對Visual Studio,請重複在Visual Studio中配置遠程代理中的步驟。
出於安全考慮,將Visual Studio與遠程代理配對的服務器證書綁定到Mac的IP地址或主機名。 若是這些值更改,則必須生成新的服務器證書,而後使用新值從新配置Visual Studio。
生成新的服務器證書
-
中止vcremote代理。
-
在終端應用程序中輸入此命令:
vcremote resetServerCert
-
當提示確認時,輸入
Y
-
在終端應用程序中輸入此命令:
vcremote generateClientCert
這會生成一個新的臨時PIN碼。
-
要使用新的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格式的配置文件的路徑。 啓動選項及其值不能包含破折號。