Cordova、PhoneGap与Ionic的关系
本文最后更新于:2026年3月11日 晚上
Cordova、PhoneGap与Ionic的关系
简介
很多开发者对 Cordova、PhoneGap 和 Ionic 的关系感到困惑。它们都与混合移动应用开发相关,但各自的定位和作用有所不同。本文将梳理三者的历史渊源和实际关系。

PhoneGap 的诞生
PhoneGap 最早由 Nitobi 软件公司于 2009 年在旧金山召开的 iPhoneDevCamp 大会上发布。它是一个基于 HTML、CSS 和 JavaScript 技术创建跨平台移动应用程序的快速开发框架。
核心特性
PhoneGap 使开发者能够通过 JavaScript 调用移动设备的核心功能,包括:
- 地理定位
- 加速器
- 联系人
- 声音和振动
- 相机
- 文件系统
支持的平台包括:iOS、Android、Palm、Symbian、WP7、WP8、Bada 和 Blackberry 等。
Adobe 收购与开源
2011年10月4日,Adobe 正式宣布收购 Nitobi 软件公司,并做出了一个重要决定:
- 将 PhoneGap 的核心代码贡献给 Apache 软件基金会
- 保留了 PhoneGap 的商标所有权
Apache 将 PhoneGap 核心代码命名为 Apache Callback 项目,后又更名为 Apache Cordova。
发展时间线
timeline
title PhoneGap/Cordova 发展历程
2009 : Nitobi 发布 PhoneGap
2011-10 : Adobe 收购 Nitobi
: 核心代码贡献给 Apache
: Apache 命名为 Callback
2011-12 : 更名为 Apache Cordova
至今 : Cordova 是开源核心
: PhoneGap 是 Adobe 商业品牌
Cordova 与 PhoneGap 的关系
简单来说:Cordova 是 PhoneGap 的开源核心代码。
Adobe PhoneGap 官方 FAQ 中有一个很好的类比:
Think about Cordova’s relationship to PhoneGap like WebKit’s relationship to Safari or Chrome.
就像 WebKit 是 Safari 和 Chrome 的渲染引擎一样,Cordova 是 PhoneGap 的核心引擎。
- 如果你要贡献代码:请贡献到 Apache Cordova 项目
- 如果你要开发应用:两者都可以,Cordova 是纯开源的,PhoneGap 提供了一些额外的商业服务和工具
Ionic 的介绍
Ionic 是一个用于开发混合手机应用的开源前端框架。它基于 HTML、CSS 和 JavaScript,专注于为移动端提供高质量的 UI 组件和交互体验。Ionic 还对 Sass 和 AngularJS 进行了优化,方便开发者快速构建现代化的移动应用。
Ionic 的特点
- 丰富的移动端 UI 组件库
- 响应式布局和高性能动画
- 支持主题定制和 Sass 变量
- 与 Angular、React、Vue 等主流前端框架集成
Ionic 与 Cordova 的关系
Ionic 集成了 Apache Cordova 框架,开发者可以直接通过 Ionic 的命令行工具(如 ionic cordova build、ionic cordova run 等)调用 Cordova 的创建、编译、打包等功能,实现对原生功能的访问。
Ionic 负责前端 UI 和交互,Cordova 负责调用原生 API 和打包应用,两者结合让开发者能够用 Web 技术开发出接近原生体验的移动应用。
总结
- PhoneGap:最早的混合应用开发框架,现为 Adobe 商业品牌
- Cordova:PhoneGap 的开源核心,由 Apache 基金会维护
- Ionic:基于 Web 技术的移动 UI 框架,集成 Cordova 实现原生功能调用
三者的关系可以简单理解为:
- Ionic 集成了 Cordova, 提供 UI 和前端开发体验, 用于创建、编译和打包移动应用项目。
- Cordova 提供原生功能访问和打包能力, 是一个开源移动应用开发框架
- PhoneGap 是 Cordova 的商业分支
参考资料: