写点什么

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

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

关注

评论

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

实用机器学习笔记三:网页数据抓取

打工人!

机器学习 学习笔记 12月日更 实用机器学习

数据一致性

卢卡多多

数据一致性 28天写作 12月日更

搭建K8s容器化应用的开发调试环境

xiaoboey

Docker Kubernetes k3s Telepresence Skaffold

《我和我的家乡》观后感

圣迪

amazing

Nydia

[Pulsar] Broker 消息分发

Zike Yang

Apache Pulsar 12月日更

渗透测试如何入门?

喀拉峻

网络安全 安全

如何设计微服务架构

天天向上

架构实战营

秒杀系统架构设计

guangbao

关于元宇宙的一些认识

李印

学习笔记 元宇宙

34 K8S之ServiceAccount及X509数字证书

穿过生命散发芬芳

k8s 28天写作 12月日更

3.《重学JAVA》—Hello World

杨鹏Geek

Java 25 周年 28天写作 12月日更

Mac 常用远程连接 ubuntu 工具对比

悟空聊架构

28天写作 Mac 软件 悟空聊架构 12月日更 远程连接

Golang Gin 框架之日志 DIY(七)

liuzhen007

28天写作 12月日更

如何调用潜意识有效收集演讲素材-从右脑到左脑的切换

将军-技术演讲力教练

JavaScript数据结构之 Array

devpoint

JavaScript ES6 array 内容合集 签约计划第二季

电子屏幕 or 风月宝鉴

mtfelix

手把手带你玩转 Spring

4ye

Java spring 程序员 内容合集 签约计划第二季

工厂模式

李子捌

28天写作 12月日更

创业研发团队的组织建设-软件工作流程

wood

创业 敏捷开发 28天写作

【Promise 源码学习】第十一篇 - Promise.all 的实现

Brave

源码 Promise 12月日更

Android C++系列:Linux线程(一)概念

轻口味

c++ android 28天写作 12月日更

支付宝商户号稳定性解决方案

hackstoic

支付宝 解决方案 To B业务

为什么不要急着告诉孩子答案?

Justin

心理学 教育 28天写作

前端开发: Vue封装复用思想的运用(其一)

三掌柜

28天写作 12月日更

linux常用命令-历史命令和自动补全

Java个体户

Linux

Python Qt GUI设计:QTableView、QListView、QListWidet、QTableWidget、QTreeWidget和QTreeWidgetltem表格和树类(提升篇—1)

不脱发的程序猿

Python qt GUI设计 Qt Company 表格和树类

为什么愿意奉献?(4/28)

赵新龙

28天写作

浅谈应用架构设计思路

陈俊

应用架构 设计指南

世界女性科技群落(二):种姓制度与数字微光下的生长录

脑极体

Vite2 + Vue3 + TypeScript + Pinia 搭建一套企业级的开发脚手架【值得收藏】

前端开发爱好者

typescript 大前端 Vue3 Vite2

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