写点什么

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:006211
用户头像

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

关注

评论

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

聊聊 Kafka:Topic 创建流程与源码分析 | 社区征文

老周聊架构

云原生 Apache Pulsar 新春征文 2月月更

2022年的元宇宙:抢人、烧钱、突破体验边界

CECBC

关于 AI 边云协同解决方案的研究与讨论 | 社区征文

liuzhen007

AI 新春征文 2月月更

外包学生管理系统的架构文档

王大胖

Windows怎么就突然不好用了?

Jackpop

浅谈人工智能发展六大趋势 | 社区征文

战场小包

人工智能 新春征文 2月月更

从冬奥看中国科技(五):漫天塞地物联网

脑极体

外包学生管理系统架构设计

唐尤华

架构实战营

毕业设计

Geek_e6f7f6

架构实战营

解密体育背后AI黑科技:花样滑冰动作识别、多模视频分类和精彩片段剪辑

百度大脑

大模型应用新范式:统一特征表示优化(UFO)

百度大脑

人才短缺、成本高昂,制造企业智能化转型路径如何破局?

百度大脑

DG-IoT工业数据云平台

dgiot

物联网 2月月更 2月日更 dgiot dgiot物联网

基于飞桨实现的“太空保卫战士”——地球同步静止轨道空间目标检测系统

百度大脑

阿里稳定性指标1-5-10解读

焦振清

稳定性 1-5-10 MTTR

【C语言】初始字符串 & 转义字符与注释

謓泽

C语言 2月月更

如何打造一款得心应手的VS Code?

Jackpop

百度AI融通创新工坊招生中!

百度大脑

PaddleDTX v1.0版本发布,安全性灵活性全面提升!

百度大脑

【网络安全应急响应】实战思路经验分享

H

网络安全 应急响应

一文搞懂MySQL体系架构

程序猿阿星

架构 MySQL 数据库 MySQL InnoDB

基于STM32设计的环境检测设备

DS小龙哥

2月月更 STM32环境检测仪

零基础想学习Web安全,如何入门?

网络安全学海

黑客 网络安全 信息安全 渗透测试 漏洞

跨平台应用开发进阶 (四) :uni-app 实现图片上传、预览、删除、压缩

No Silver Bullet

uni-app 跨平台 图片 2月月更

作业八-消息队列数据库建模

曾竞超

架构实战营 「架构实战营」

Lyft微服务研发效能提升实践 | 1. 开发和测试环境的历史

俞凡

研发效能 大厂实践 2月月更 lyft

Web Components 系列(十一)—— 实现 MyCard 的可复用

编程三昧

前端 组件化 2月月更 webComponents

用Weave Net 打开跨主机容器互联大门 | 社区征文

L同学

docker网络 新春征文 网络交换机 weave 集群网络

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