写点什么

Ionic Capacitor:使用 JavaScript 开发原生应用

  • 2019-07-07
  • 本文字数:912 字

    阅读完需:约 3 分钟

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


2019-07-07 08:005935
用户头像

发布了 391 篇内容, 共 136.3 次阅读, 收获喜欢 256 次。

关注

评论

发布
暂无评论
发现更多内容

软件测试/测试开发 | 常用测试策略与测试手段

测试人

软件测试 自动化测试 测试方法

Studio One6绿色版音乐创作编辑软件

茶色酒

Studio One6

Portraiture4.0简体中文版本磨皮插件

茶色酒

Portraiture4.0

LeetCode题解:1238. 循环码排列,归纳法,详细注释

Lee Chen

JavaScript 算法 LeetCode

加快发展先进制造业势在必行!

加入高科技仿生人

低代码 数字化转型 制造业 先进制造 数字转型

CleanMyMac4.20免费版下载

茶色酒

CleanMyMac4.20

未来智安入选CCIA“网络安全服务阳光行动”成员单位

未来智安XDR SEC

网络安全

将企业文件共享解决方案与数据丢失防护配对

镭速

低代码开发平台 助力教育行业信息化建设

力软低代码开发平台

软件测试/测试开发 | 什么是软件缺陷

测试人

软件测试 自动化测试 测试开发

ChatGPT为什么在一夜之间爆火?| 社区征文

三掌柜

人工智能 openai ChatGPT

掌握统计学,做选择时的纠结少一半!

图灵教育

R语言 统计学

如何使用appuploader制作apple证书​

雪奈椰子

OpenHarmony应用集成AGC云存储

白晓明

云存储 DevEco Studio 端云协同 OpenHarmony应用开发 AppGallery Connect

如何将BI 工具与业务系统进行单点登录对接,实现用户权限通用

葡萄城技术团队

为什么负责任的技术始于数据治理

葡萄城技术团队

多级分流

胖子笑西风

Java 架构 高并发 流量

软件测试/测试开发 | Bug定位方法

测试人

软件测试 自动化测试 测试开发 bug定位

观测云产品更新|新增用户访问监测自动化追踪;新增 CDN 质量分析;新增自定义查看器导航菜单等

观测云

运维 云服务 可观测 观测云 可观测性用观测云

CleanMyMacX4.20完美试用版功能介绍

茶色酒

CleanMyMacX4.20

hive etl 通过 ETL 导出 Hive 中的数据

weigeonlyyou

hadoop hive Hive SQL hadoo Kafka ETL

掌握统计学,做选择时的纠结少一半!

图灵社区

R语言 统计学

flutter系列之:Navigator的高级用法

程序那些事

flutter 架构 大前端 程序那些事

软件测试/测试开发 | 白盒测试方法论

测试人

软件测试 测试开发 白盒测试

软件测试 | 代码覆盖率集成

测吧(北京)科技有限公司

测试

【iOS逆向与安全】使用ollvm混淆你的源码

小陈

ios开发 逆向 iOS逆向 ios安全 逆向技术

不到3天,省下近10万,低代码是真给老板省钱啊!

引迈信息

前端 敏捷开发 低代码

软件测试/测试开发 | 黑盒测试方法论-判定表

测试人

软件测试 测试开发 测试用例 黑盒测试

BPMN2.0是什么?它能解决企业流程管理中哪些问题?

优秀

BPMN

社区1月月报|OceanBase 4.1 即将发版,哪些功能将会更新?

OceanBase 数据库

数据库 oceanbase

Ionic Capacitor:使用 JavaScript 开发原生应用_大前端_Guy Nesher_InfoQ精选文章