如果要長期處理 Apple 的相關(如:watchOS, iOS, tvOS, macOS)的應用開發時,要有一台 Mac 機器來處理使用會比任何服務或是租借都來的方便的,只要考慮相關的機器年限能否升級到最新的 macOS 系統問題...
(相信 Apple 應該都會有很 "佛心" 的至少支援個二~四年吧...😏)
雖然在 AppCenter 當中,皆可以直接使用內建的 macOS 整合相關的 CI/CD 工具來編譯或發佈 App。但是如果只是有特殊或偶爾 Demo 又或是 PoC 的需求,也許買一台 Mac 機器不是太合乎成本,也許 MacinCloud 的雲端服務會是個不錯的選擇,本篇就來介紹一下該如何訂閱該服務的方式!
首先來到 macincloud 的官方網站:
註冊 macincloud 的帳號或透過 OAuth 登入:
登入完成後,點選 Plans 當中適合自己的方案 (在本篇介紹中選擇使用 Managed Server):
接著在計畫的選項勾選所需要的設備需求:
若要讓 Visual Studio 透過 ssh 連線到 macincloud 的服務,需勾選第 7 項服務的加購選項。
完成選購項目的勾選後,就進入到 Billing info(帳單選項),可以透過 "信用卡" 或是 "PayPal" 付款(本篇使用 "信用卡" 付款):
完成後進入 Confirmation (確認)頁面,再次確認沒問題的話就勾選接受合約與同意,即可點選 "Subscribe" 完成訂閱。
完成訂購後就會出現 "Thank you" 感謝畫面。
訂閱完成後在 macincloud 就會看到訂閱內容:
點選已訂閱的服務機器,可看到一些基本控制:
可以從這邊下載連線到 Mac 服務的 RDP(Remote Desktop Protocol) 設定檔(寄送帳號啟用的 email 也會有下載連結):
下圖是收到帳號開通訂閱的 Email 通知:
下圖是所下載的 RDP 連線設定檔:
所下載的 RDP 連線設定檔當中選擇任一個來使用,理論上(排除防火牆等因素)每個 RDP 檔案都能直接雙點擊後就能直接連線,連線成功後就需要 "輸入"(預設無法複製貼上) macincloud 在 email 當中所寫的帳號密碼,完成輸入後後點擊 "->" 登入:
以下是登入完成後的連線畫面過程:
再來就看看 macincloud 所租用這台機器裡面安裝的軟體(請自行注意相關的軟體使用授權):
當然接著就是來看看 Visual Studio 能否正常的跟 macincloud 的機器服務來連線囉!
測試連線,在 Visual Studio 2019 中就先選擇"不使用程式碼繼續":
在 Visual Studio 的選單列中選擇 "工具" -> "iOS" -> "與 Mac 配對":
在與 Mac 配對的對話視窗當中選擇 "新增 Mac",並且輸入 macincloud 服務提供的機器對外連線 ip (帳號啟用的那封 email 上有寫,或是可以在 Mac 中自行查詢):
連線成功後,需要進行 ssh 的登入驗證,請輸入 macincloud 啟用服務 email 當中的帳號密碼後點選 "登入"。
若連線過程中遇上兩邊 Xamarin.iOS 版本不符的狀況可以先點選 "取消" 略過這個安裝的步驟,接著再點選 "確定"。
接著會再重新開始進行連線的動作。
連線完成。
接著建立一個 Xamarin.iOS or Xamarin.Forms 的專案來進行編譯測試(以下用 Xamarin.Froms 作為展示),確認執行環境為 "iPhoneSimulator" 以及 iOS 為執行專案後,就可以跑執行試看看(使用 F5 or Ctrl + F5 皆可,但 F5 會要進入偵錯模式,偵錯資訊需要傳輸到 macincloud 的機器上再傳回來,將會等待更久的時間)。
現在各版本的 Visual Studio 也都能搭配使用 Remote iOS Simualtor 了,所以也可以直接在 Windows 上直接看到 App 的測試效果(第一次需等待 simulator 啟動):
完成!
最後,若當天已經不使用了,絕對要記得從 RDP 到 Mac 的連線中 "登出" 使用者(尤其是購買的方案有當日使用時間上限的用戶)。
點選 "登出"。
看到此畫面,點選 "確定" 才算結束此次的連線使用。
最後的最後,若已經結束該專案的展示 或是 PoC 的時程,要記得取消訂閱的話請繼續參考下面介紹~~~
回到 macincloud 網站中登入帳號訂閱。
點選 "Billing"。
在右側的畫面點選 "Settings",再到下方的 Subscriptions Invoice 點選 "View"。
點選 "Cancel Subscription"
再次確認是否取消訂閱,確認請點選 "Cancel Subscription"。
最後確認訂閱出現取消完成的提示訊息,並且該訂單會寫成 "Reactive Subscriptions" ,即代表取消訂閱完成。
I'm a Microsoft MVP - Developer Technologies (From 2015 ~).
I focus on the following topics: Xamarin Technology, Azure, Mobile DevOps, and Microsoft EM+S.
If you want to know more about them, welcome to my website:
https://jamestsai.tw
本部落格文章之圖片相關後製處理皆透過 Techsmith 公司 所贊助其授權使用之 "Snagit" 與 "Snagit Editor" 軟體製作。