跨平臺移動應用開發迎來“大殺器”,Xamarin.Essentials正式版釋出
近日,跨平臺移動應用開發迎來了“大殺器”——Xamarin.Essentials正式版。Xamarin.Essentials是可以將移動原生特性抽象成跨平臺的API,經過了長達數個月的預覽之後,正式版終於和大家見面了。據悉,此版本中不僅包含了30多個原生特性,還包含了眾多由社群貢獻的增強特性。
Xamarin.Essentials可以將移動原生特性抽象成一組跨平臺的API,旨在簡化針對多種平臺的移動應用開發。經過了長達數個月的預覽之後,正式版終於和大家見面了。
Xamarin提供了一種使用宿主平臺原生特性的方式,開發者通過原生C# API使用公開的繫結。例如,開發者可以通過使用Xamarin.iOS框架獲得iOS功能,如ARKit、加速計,甚至是Objective-C執行時。開發人員可以通過C#來使用基於iOS、Android或macOS API的原生特性。
而Xamarin.Essentials採用了另外一個不同的方法,其提供了可支援所有平臺的單個API。這樣做的好處是大部分業務邏輯可以保持通用。微軟Xamarin工程師James Montemagno表示,Xamarin.Essentials經過高度優化,Xamarin連結器只連結開發者實際使用的特性,其他部分均會移除。
目前,Xamarin.Essentials包含了30多個原生特性,包括連線性、地理位置、裝置資訊以及安全儲存等等。
Xamarin.Essentials的很多API都嘗試使用了類似設計。例如,磁力計、陀螺儀、指南針等都要求使用start和stop方法來啟動或停止監聽相應的感測器,並通過ReadingChanged事件將感測器的變更資訊傳回。其他Essentials API遵循更為命令式的風格。例如,如果要開啟或關閉閃光、安全地儲存一系列位元組,或在主執行緒上執行一段程式碼,只需要呼叫相應的方法即可。
跨平臺的主要差異在於每個平臺的許可權系統以及應用程式必須滿足的不同要求。而這些資訊都與每個API一起列在了文件中。
Xamarin.Essentials可應用在Android 4.4或更高版本、iOS 10.0或更高版本、UWP 10.0.16299.0或更高版本。開發者可以使用NuGet將Xamarin.Essentials新增到專案中,並在原始檔中通過using Xamarin.Essentials;引用它。如果開發者想要從Xamarin應用程式遷移到Xamarin.Essentials,那麼可參考Montemagno編寫的遷移指南或者官方的Xamarin GeoContacts應用程式。
檢視英文原文:https://www.infoq.com/news/2019/01/xamarin-essentials-native-apis
相關文章
- CrossApp 0.1.5 釋出:跨平臺移動應用開發引擎ROSAPP
- Flutter嚐鮮:跨平臺移動應用開發Flutter
- 使用Xamarin實現跨平臺移動應用開發
- 5大移動應用開發平臺推薦
- 跨平臺移動應用開發引擎CrossApp更新至0.1.8ROSAPP
- 《React Native跨平臺移動應用開發》讀後鬼扯React Native
- 跨平臺打造移動原生應用的10大武器
- 可匯出原生移動應用的跨平臺開發引擎CrossApp正式開源!ROSAPP
- 移動跨平臺開發深度解析
- hybird跨平臺移動app開發APP
- 【重大更新】跨平臺移動開發框架Altova MobileTogether v5.0釋出移動開發框架
- 調查:開發人員首選的移動應用開發跨平臺工具
- 【iCore3應用開發平臺】釋出 iCore3 應用開發平臺暫存器說明
- 跨平臺.NET MAUI框架 正式版GA釋出UI框架
- 淺談移動應用的跨平臺開發工具(Xamarin和React Native)React Native
- 移動端跨平臺開發的深度解析
- 用 Visual Studio Code 做基於 .NET MAUI 跨平臺移動應用開發UI
- C#移動跨平臺開發(2)Xamarin移動跨平臺解決方案是如何工作的?C#
- 【iCore3應用開發平臺】釋出 iCore3 應用開發平臺使用說明
- 跨平臺移動應用引擎CrossApp V0.6.0 釋出,增加視訊控制元件ROSAPP控制元件
- MediaPipe - 跨平臺機器學習應用開發框架API機器學習框架
- 10天學會跨平臺移動應用開發之AppCan視訊教程APPPCA
- 移動開發的跨平臺技術演進移動開發
- TypeScript, Angular 和移動端的跨平臺開發TypeScriptAngular
- NativeScript3.0.1釋出,Native跨平臺應用
- 【iCore3應用開發平臺】釋出 iCore3 應用開發平臺出廠程式碼rev0.0.2
- 【iCore3應用開發平臺】釋出 iCore3 應用開發平臺出廠程式碼rev0.0.6
- 【iCore3應用開發平臺】釋出 iCore3 應用開發平臺出廠程式碼rev0.0.1
- 【iCore3應用開發平臺】釋出 iCore3 應用開發平臺出廠程式碼rev0.0.4
- 【iCore3應用開發平臺】釋出 iCore3 應用開發平臺出廠程式碼rev0.0.3
- 【iCore3應用開發平臺】釋出 iCore3 應用開發平臺出廠程式碼rev0.0.5
- 移動電商待發 InMobi釋出Miip發現平臺
- [譯] 使用 Flutter 實現跨平臺移動端開發Flutter
- 為什麼移動端跨平臺開發不靠譜?
- 【iCore3應用開發平臺】釋出 iCore3 應用開發平臺PID控制程式碼
- 淺談移動跨平臺開發框架的發展歷程框架
- .NET Core 跨平臺釋出
- C#移動跨平臺開發(1)環境準備C#