跨平台行動裝置 APP 開發解決方案

讓您使用 C# 語言便可開發 iOS、Android 與 Windows 的 Apps !

高效能、跨平台、原生開發

Xamarin將原生(Native)的 IOS及Android API轉換為C# 函式庫供使用者使用,
開發人員可使用C#撰寫程式,並呼叫原生平台(IOS, Android)的API,
且透過良好的設計,可以在不同平台共用程式碼。

產品特色

跨平台開發

Xamarin可以使用熟悉的C#來撰寫iOS, Android, Mac及Windows 應用程式。

程式碼重用(Reuse)

使用您最愛的C#及.NET函式庫, 輕鬆使用第三方的Native Library及Framework。

智慧輸入

開發應用程式時, 開發工具會偵測您輸入的部份字母, 尋找對應的API並自動完成您的輸入。

與Visual Studio 整合

在Visual Studio中建立, 建置, 除錯以及部署。 還可以使用您喜愛的plug-in, 例如ReSharper. 以及與TFS整合。

原生的使用者介面及效能

Xamarin 帶給您高效能的體驗並完整對應各個平台的Native API。因此透過Xamarin, 您所建立的應用程式可以完全發揮裝置特有的性能。

UI設計

可在Visual Studio 中同時整合 Android 與 iOS 的 UI 設計功能, 讓您在同一開發環境輕鬆完成操作畫面設計 !

開發平台主要架構

其他解決方案比較

  • 代表性產品
  • 跨平台能力
  • 使用者經驗
  • 離線能力
  • 整合性與功能
  • 學習門檻

Mobile Web


  • HTML5/JQuery Mobile
  • ★★★★★
  • ★★★

Hybrid


  • PhoneGap
  • ★★★★★
  • ★★★
  • ★★★

Interpreted App


  • Titanium
  • ★★★
  • ★★★★★
  • ★★★

Native Platform


  • Objective-C/Java
  • ★★★★★
  • ★★★★★
  • ★★★★

開發方法概述

以Xamarin開發App應用程式的方法概述如下 : 開發人員在單一開發環境中即能管理、撰寫程式與測試各行動平台的App應用程式,可以在同一個方案中統合所有平台的專案,包括iOS、Android、Windows Phone與Windows 8 Store App。 Xamarin支援MVC設計模式,開發人員可以設計哪些是與使用者介面相關的部份,並將與平台無關的商業邏輯、服務存取、資料存取以及資料層從介面抽離出來,依此為依據將應用程式區分為兩部份, 分別為core以及user interface,有效達到程式碼共享,讓設計架構更嚴謹。

針對上述專案統合開發與程式碼共用,如下圖左半邊所示,開發人員可將抽離出來的共用程式碼獨立成一個專案 (Shared Code),並只加入常用的組件(如Base Class Library),若有部份程式碼使用到與平台相關的組件或技術,可在程式碼中加入條件式編譯的指示詞,供各平台直接使用,不需要進行修改。

在各平台的專案中, 開發人員可以透過功能套件 (Project Linker),以檔案連結的方式, 將共用程式碼的部份連結到各平台專案。在開發平台專案時,只要針對使用者介面以及針對控制項的操作撰寫程式即可。對於商業邏輯或資料存取的部份,則可以在各平台共用,這是使用原生的開發方式(Objective-C、Java)所無法達到的。 開發完成後,即可透過Xamarin的編譯器進行編譯。Xamarin 為不同的平台提供編譯器。在iOS平台,Xamarin 使用AOT編譯,在Android平台,則使用JIT編譯,將C#程式碼直接編譯為ARM CPU的機器碼,以得到最佳效能。

超過500家指標性企業的肯定