“AI 技术+人才”如何成为企业增长新引擎?戳此了解>>> 了解详情
写点什么

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

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

关注

评论

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

[架构实战营]模块五

Vincent

「架构实战营」

产品规划:以终为始

石云升

产品规划 1月月更

第八单元总结

张靖

#架构实战营

模块8作业

Asha

通过 PXE 自动化安装 Ubuntu Server

hedzr

Ubuntu20.04 cloud-init pxe-server bash.sh

Spring 的 BeanFactory 和 FactoryBean 傻傻分不清?

CRMEB

流沙·进化岛|编程、艺术、新媒体等皆可学(你的终身进化岛1000+人)

AI悦创

AI悦创

节日与科技撞个满怀,一场氛围感的升级

脑极体

架构实战营模块八作业

spark99

架构实战营

架构训练营 - 模块八作业

VegetableBird

架构训练营

武侯祠-创业团队

wood

创业 300天创作 武侯祠 三国

WPF中的一个bug造成CPU资源拉满

喵叔

28天写作 1月月更

2022 第一天,立 Flag

贾献华

盘点 2021|在家办公(偷卷)的一年

悟空聊架构

passjava 悟空聊架构 2021年终总结 盘点 2021

架构训练营 -- 模块五

LJK

架构训练营

预言机不预测

Rayjun

区块链 预言机

01-大规模异步新闻爬虫:简单的新闻爬虫

AI悦创

第四周作业

lv

Go编译原理系列3(词法分析)

书旅

Go 编译原理 后端技术

模块八作业

doublechun

架构师实战营

为什么私有方法上的Spring Cache注解不生效?

看点代码再上班

spring 源码 程序员 spring aop Spring Cache

模块八作业-架构实战营

Geek_99eefd

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

一个cpp协程库的前世今生(八)env的状态与标识位

SkyFire

c++ cocpp

LabVIEW轮廓分析与比较(基础篇—8)

不脱发的程序猿

机器视觉 图像处理 LabVIEW 轮廓分析与比较

如何做小程序的产品设计?

石云升

产品设计 产品思维 1月月更

基于MySQL消息队列存储方案设计

天天向上

架构实战营

Greenplum 内核源码分析 - 分布式事务 (四)

王凤刚(ginobiliwang)

源码分析 分布式事务 最佳实践 greenplum

架构实战营模块八作业

孙志强

架构实战营

设计消息队列的Mysql表结构

AHUI

「架构实战营」

模块8作业

21°Char

flink输出到iceberg

聚变

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