行動應用開發平台寶典 (一) 跨平台行動前端技術


【2016/6/16 號外】雲優先、行動優先 – 微軟在 Gartner 魔力象限的行動應用程式開發平台 (MADP) 成為領導者! 詳情請見 連結


 

微軟行動應用開發願景

建立適應性強、企業等級的行動 App 策略橫跨您的開發、IT 運行以及生產管理

madp

 

前言

行動裝置可謂人類史上最快速的科技爆炸,不僅是 80年代 PC 爆炸成長的 10 倍速度,更是近年社交網路的 3 倍速度成長。根據 Gartner 預估,2016 年底前會有 82% 的行動電話是智慧型手機,比起 2015 年成長了 12 %。現今,人手不只一隻智慧型手機更有一台平板,身為開發人員您準備好挑戰市場浪潮了嗎?

Capture

雖然您可以針對不同平台各自開發原生的行動 App,例如建置 iOS App 使用 Objective-C/Swift 、Android App 使用 Java 以創造很棒的使用者體驗,但面對多個平台,開發維護成本是非常可觀的,更別說需要成立多個團隊各自為營的人力與溝通成本。

3

為了協助控制以及降低成本,跨平台的技術已漸漸成為顯學。您知道嗎? 預估到 2017 年會有 40% 的行動開發是採用跨平台技術 的。

此篇為 行動應用開發平台寶典 系列文 (一),為您列舉現在微軟支援的幾種熱門的跨平台行動應用開發前端技術

 

混合式 App 使用 HTNL/JavaScript 技術

如果您是熟悉 HTML 和 JavaScript 的 Web 開發人員,則可使用 Visual Studio Tools for Apache Cordova 以 Windows、Android 和 iOS 裝置為目標。這些應用程式可以全部三個平台為目標,且您可以使用最熟悉的技巧和程序來建置它們。

那麼 Cordova 是什麼? 簡單地說,它是一個架構。該架構包含外掛程式的模型。此外掛程式模型提供單一的 JavaScript API,您可以用來存取所有三個平台 (iOS、Android 和 Windows) 的原生裝置功能。

因為這些 API 是跨平台的,您可以在所有三個平台之間共用您撰寫的大部分內容。這會降低開發與維護的成本。另外,也不需要從頭開始。如果您已建立其他類型的 Web 應用程式,可以與 Cordova 應用程式共用那些檔案,而不需要以任何方式修改或重新設計。

1. Visual Studio Tools for Apache Cordova (TACO)

– MSDN 技術手冊: 開始使用 Visual Studio Tools for Apache Cordova

– TACO 官網:  http://taco.visualstudio.com 

– 部落格介紹文章: 借力 Apache Cordova,網站工程師也能攻掠行動平台!

2. Visual Studio Code + Cordova extension

– 部落格介紹文章: Visual Studio Code 上也能開發 Apache Cordova 應用程式了!

原生 App 跨平台技術

1. 使用 C#、.NET 和 Xamarin 

Xamarin 是行動應用程式開發平台,可從通用 C#/.NET 程式碼基底建置原生 iOS、Android 和 Windows 應用程式,以在平台之間重複使用 75% 到將近 100% 的程式碼。使用 Xamarin 和 C# 撰寫的應用程式可完整存取基礎平台 API,並且能夠建置原生使用者介面,再編譯為機器碼,因此不會對執行階段效能造成太大的影響。

更棒的是,熟悉 C#、.NET 和 Visual Studio 的開發人員在使用 Xamarin 開發行動應用程式時,不需要了解 Objective-C 或 Java 等機器碼語言,也能享有相同的功能和產能,包括在 Android、iOS 和 Windows 裝置上進行遠端偵錯。因此,許多具有美觀使用者介面的高效能應用程式 (例如 NASCAR、Aviva 和 MixRadio) 意料之中都是使用 Xamarin 所建置。

4

– MSDN 技術手冊: Xamarin 的行動應用程式開發

– 影片教學: YouTube 影片 & Channel 9 影片

Xamarin 開發人員中心

2. 使用 Visual Studio C++ 建立共用程式庫與元件

您可以使用 Visual Studio,針對傳統型 Windows 應用程式、通用 Windows 應用程式、iOS 和 Android 平台,來建置標準 C++ 程式碼的共用程式庫。您只需使用 Visual C++ 以及整合在 Visual Studio 中的協力廠商工具,就可以建置適用於 Windows 和 Android 平台的原生應用程式。如果您有 Mac 電腦,便可使用 Visual Studio 針對建立與部署在您 Mac 上的 iOS 應用程式建立及偵錯 C++ 程式碼。

使用 C++ 為 Android、iOS 和 Windows 建置

– MSDN 技術手冊: 使用 Visual C++ 建置跨平台應用程式

您可以使用 Visual C++ for Cross-Platform Mobile Development 來建立、建置、執行和偵錯使用 C++ 的完整 Android 應用程式。Visual Studio 包含可協助您開始使用的 Android Native Activity 專案範本。

建立 Native Activity 專案

– MSDN 技術手冊: 建立 Android Native Activity 應用程式

– 官網: Visual C++ 跨平台行動開發

3. 使用 Visual Studio Tools for Unity 建立手機遊戲

Unity是建立跨平台遊戲的遊戲引擎和開發環境。Unity 引擎可在 21 個平台上執行,涵蓋範圍從高效能電腦,到遊戲主機、觸控式平板電腦和行動平台、網站甚至 console。Unity 編輯器提供容易使用的介面,可建置出豐富的遊戲世界。Unity 的功能、使用容易和涵蓋範圍,使其成為現今遊戲開發人員之間的熱門選擇。

Unity 編輯器適合用來組合您的遊戲世界,但無法在該編輯器中撰寫程式碼。您可運用 Visual Studio Tools for Unity,使用熟悉的 Visual Studio 程式碼編輯、偵錯與提升生產力的功能,用 C# 為 Unity 專案建立編輯器與遊戲指令碼,也可以使用 Visual Studio 的強大偵錯功能,對這些指令碼進行偵錯。

不僅如此,Visual Studio Tools for Unity 還與 Unity 編輯器緊密整合,因此您可以花較少時間來回切換執行簡單工作,它也提供 Unity 特有的提升產能功能,並將 Unity 文件放在您可以隨時取得的位置。

Capture

– MSDN 技術手冊: Visual Studio Tools for Unity

– 官網: 使用 Visual Studio 組建 Unity 遊戲

4. 使用 PowerApps 建立客製化企業重要的內部應用程式 (LoB) – Preview

這項服務的一個主要用例是允許商業用戶在一個基於表單的用戶介面上,通過拖放控制項和數據源的方式開發應用。而專業開發者一樣可以參與這些應用的開發過程,他們可以在 Azure API App 平台上開發相應的 API,並讓 PowerApps 應用進行調用。一但您和其他使用者分享這個 App,他們可以選擇運行在網頁瀏覽器或者任何裝置(PC、平板或手機) 或者使用 PowerApps for iOS & Android。因此您只需建立一次 App,便可在任何裝置平台上呈現。

powerapp

– PowerApps 入門手冊: 開始使用 PowerApps

PowerApps 官網

 

參考資源:

Visual Studio 中的跨平台開發

Visual Studio 官網

下一章節

– 行動應用開發平台寶典 (二) 行動後端服務

 


Capture

若對以上技術及產品有任何問題,很樂意為您服務! 請洽:台灣微軟開發工具服務窗口 – MSDNTW@microsoft.com / 02-3725-3888 #4922

Comments (0)