Ionic Capacitor:使用 JavaScript 開發原生應用

CapacitorIonic給出的一種混合應用開發新框架,可替代自2009年提出以來就廣爲使用的Apache Cordova解決方案。

Ionic決定創建該替代Cordova的解決方案,主要出於兩個方面的考慮。一是Cordova的插件系統已經落後於時代,二是Cordova管理原生平臺的方法存在侷限。

Cordova和Capacitor都提供了插件系統,支持JavaScript和藍牙、RFID等原生平臺間的通信功能。Cordova插件系統近些年一直在盡力跟上最新的技術發展。

其中一個很好的例子是針對Swift語言。該語言由蘋果公司在2014年提出,但是直到2019年才具有Cordova插件(雖然更早由第三方提供了支持Swift的插件)。

落伍的插件系統損害了整個生態系統,尤其是當生態系統嚴重依賴於第三方插件時。

Capacitor插件系統提供更直觀的開發過程,支持最新的技術。

由於Capacitor插件生態系統的規模相對還比較小,目前開發人員可在Capacitor中使用大多數Cordova插件。但這種兼容只是臨時的解決方案,意在確保開發人員可獲取主要的平臺特性。

Capacitor爲行業帶來的第二個變革是原生項目管理。Cordova在構建時生成原生平臺代碼。開發人員使用包含構建應用指令的共享配置文件,該文件進而被Cordova的原生構建過程使用。此方法雖然簡化了構建過程,但代價是導致原生項目訪問受限。

雖然Cordova提供的解決方案易於使用,也適用於一些小型項目,但那些更大、更復雜的項目對此提出了挑戰。此類項目通常需要對原生項目代碼和配置擁有更大的控制權。

爲了解決該問題,Ionic Capacitor採用了一種降低侵入性、增加靈活性的方法。 Capacitor爲原生平臺生成並同步JavaScript代碼,並要求開發人員直接管理原生平臺代碼。這樣的原生代碼管理需要開發人員做一些額外的工作,但可以更好地控制項目的原生特性。

Cordova和Capacitor的應用範圍均已擴展到移動應用開發之外,現在支持(使用Electron)創建PWA和桌面應用。儘管相比二者對混合移動應用開發的支持,對這些功能的支持尚不完備。

Ionic Capacitor是遵循MIT許可的開源軟件。歡迎依據“Capacitor貢獻者指南”對項目做出貢獻。貢獻者也需要遵循“Capacitor行爲準則”。

原文鏈接:

Ionic Capacitor: Creating Native Applications with JavaScript

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章