最近專案中需要移動客戶端,由於團隊基本上使用.Net產品線,所以決定使用Xmarin進行開發,這樣技術路線統一,便於後期維護。官網上是這樣介紹的“ Xamarin 允許你使用 .NET 程式碼和特定於平臺的使用者介面生成適用於 Android、iOS 和 macOS 的本機應用。 Xamarin.Forms 允許你使用採用 C# 或 XAML 編寫的共享 UI 程式碼生成本機應用。” 本文以數獨遊戲開發為例,總結一下Xamarin開發的基本過程。
環境準備
開發Xamarin應用需要安裝Visual Studio 以及相關的元件,如下圖所示:
選擇安裝“使用.Net的移動安裝”。
建立Xamarin專案
開啟Visual Studio 2022,選擇建立Xamarin Form專案:
選擇選項卡式佈局:
解決方案中包括三個專案:一個共享類庫和針對Android以及iOS的專案,在共享類庫中編寫介面和主要的邏輯,在另外兩個專案中編寫Android和iOS特定的部分。
這個專案中包括了幾種常用的介面模板,參考這些模板可以編寫我們自己的應用。從共享類庫的結構可以看出,Xamarin類似於WPF桌面程式設計,也是採用基於XAML編寫介面,採用MVVM模式實現程式碼和介面的分離。
執行和除錯
專案搭建完成,我們可以試著執行一下。Android系統的除錯可以使用模擬器或者連線真機,個人覺得使用真機除錯更快,更方便。我使用的是華為P30進行除錯,使用資料線連線手機後,手機中會提示是否允許連線,確認後,在Visual Studio中就會出現相關的裝置選項,如下圖所示:
這時,就可以啟動除錯了。編譯完成後,會在手機上部署這個應用,部署過程中手機上會有安全提示,部署完成後,應用會自動啟動,手機上的介面如下:
這時可以進行除錯了。
測試熱載入
Xamarin支援熱載入,也就是在除錯執行期間,如果修改介面,在真機或者模擬器上可以即時看到修改的效果,大大提高開發的效率。首先,在真機上執行專案,然後在Views目錄下找到AboutPage.xaml,修改下面的程式碼:
<ContentPage.Resources>
<ResourceDictionary>
<Color x:Key="Accent">#96d1ff</Color>
</ResourceDictionary>
</ContentPage.Resources>
將顏色##96d1ff改為red,這時,真機上介面馬上發生了改變:
到這裡我們已經完成了專案的建立,並且可以進行執行和除錯,下一步增加我們需要的介面,並編寫相關的邏輯。