トップ OSS紹介 Apache Cordova

Apache Cordova

NRIのOpenStandiaが提供するApache Cordova詳細情報

バージョンアップ情報

Apache Cordova情報

Apache Cordova情報更新日:2025/06/10

Apache Cordovaとは

Apache Cordova(アパッチ・コルドバ)はオープンソースのクロスプラットフォームモバイルアプリケーション開発フレームワークで、iOSやAndroidのアプリ開発においてプラットフォームに依存しないアプリ開発の技術として注目をされています。
Apache Cordovaは2009年にNitobi社によりPhoneGapという名前で開発が始められました。Nitobi社は2011年にAdobe社に買収されましたが、Adobe社はPhoneGapのソースコードをApacheソフトウェア財団(Apache Software Foundation、ASF)に寄贈し、Apache Cordovaとして継続的に開発されています。
Apache CordovaはASFのトップレベルプロジェクトとして2012年10月に認定され、今後ASFによるオープンな管理下で開発が進むことが期待されています。

主な特徴

  • HTML5、CSS3、JavaScriptを用いたハイブリッドアプリ開発が可能です
  • マルチプラットフォームに対応したアプリ開発により、iOS、AndroidなどのスマートフォンのアプリなどOS毎に開発をする負担を軽減できます
  • カメラや加速度センサーなどのプラグインがあるため、各プラットフォーム固有の機能にも対応しています
  • 独自のプラグインを作成することも可能であり、柔軟性の高い開発が可能です

Apache Cordovaの構成

Apache Cordovaの構成は以下の通りです。

参照:https://cordova.apache.org/docs/en/latest/guide/overview/index.html#architecture

作成した「Web APP」を、各プラットフォーム(iOS, Androidなど)専用のラッパーアプリの中にある「WebView」で実行し、共通のAPI(Cordova Native APIs)を通じて本来ウェブページからはアクセスしにくいデバイス固有の機能(カメラ、GPS、連絡先など)をCordova Pluginsを使用することで利用できるようにすることができます。

Apache Cordovaの開発ツールとプラットフォームAPI

Cordova CLI 開発プラットフォーム

プラットフォーム

Android

iOS

Electron

Mac

Windows

×

Linux

×

コアプラグインAPI

プラットフォーム

Android

iOS

Electron

バッテリー状態

未評価

カメラ

キャプチャ

未評価

接続

未評価

デバイス

未評価

イベント

未評価

ファイル

未評価

地理位置情報

未評価

アプリ内ブラウザ

未評価

メディア

未評価

通知

未評価

スプラッシュスクリーン

未評価

ステータスバー

未評価

ストレージ

未評価

振動

×

プラットフォーム別の機能

プラットフォーム

Android

iOS

Electron

プラグインインターフェース

-

埋め込みWebView

-

参照:https://cordova.apache.org/docs/en/latest/guide/support/index.html

メリット・デメリット

メリット・必要性

Apache Cordovaのメリットは既存のWeb開発者が新たな言語を学ぶことなくモバイルアプリ開発に参入できる点です。豊富なプラグインアーキテクチャを通じて、純粋なWebアプリでは実装が困難なデバイス固有の機能も利用可能です。
Webとネイティブ技術を融合したハイブリッドアプリの開発環境として、UIはHTMLで構築しながらもデバイス固有の機能を活用できる柔軟性を提供します。特にWeb開発のバックグラウンドを持つチームにとって、モバイルアプリ開発への移行障壁を大幅に下げられる点は重要なメリットとなります。

デメリット・注意点・課題

Apache Cordovaで作成したアプリは、ネイティブアプリと比較して複雑なアニメーションや高負荷な処理のパフォーマンスが劣る傾向にあります。
また、新しいOSバージョンのリリースに伴う最新機能への対応が遅れる場合があり、互換性の問題が発生する可能性があります。
さらに、近年はReact NativeやFlutterなどの代替技術の台頭により、相対的な優位性が低下しているという課題もあります。

類似プロダクト

Apache Cordovaと同様にWebViewベースの開発が可能なものとしてはTitanium Mobileが有名です。また、WebViewベースではありませんが、クロスプラットフォーム開発の領域ではReact NativeやFlutterが広く利用されています。

動作環境

Apache Cordovaの対応プラットフォームは以下となります。

  • Android

Cordova-android version

Android API レベル

ライブラリとツールのバージョン

13.0.x

24(7.0)-34(14.0)

Build Tools 34.0.0 以上、35.0.0未満
Kotlin 1.9.24
Gradle 8.7
Android Gradle Plugin 8.3.0
AndroidX Compat Library 1.6.1
AndroidX WebKit Library 1.6.0
AndroidX Core SplashScreen 1.0.0
Google Services Gradle Plugin 4.3.15
Java Development Kit (JDK) 17
Node.js 16.13.0以上

12.0.x

24(7.0)-33(13.0)

Build Tools 33.0.2 以上、34.0.0未満
Kotlin 1.7.21
Gradle 7.6
Android Gradle Plugin 7.4.2
AndroidX Compat Library 1.6.1
AndroidX WebKit Library 1.6.0
AndroidX Core SplashScreen 1.0.0
Google Services Gradle Plugin 4.3.15
Java Development Kit (JDK) 11
Node.js 16.13.0以上

11.0.x

22(5.1)-33(12L)

Build Tools 32.0.0 以上、33.0.0未満
Kotlin 1.7.21
Gradle 7.4.2
Android Gradle Plugin 7.2.1
AndroidX Compat Library 1.4.2
AndroidX WebKit Library 1.4.0
AndroidX Core SplashScreen 1.0.0-rc01
Google Services Gradle Plugin 4.3.10
Java Development Kit (JDK) 11
Node.js 14.0.0以上

10.1.x

22(5.1)-30(11.0)

Build Tools 30.0.3 以上、31.0.0未満
Kotlin 1.5.21
Gradle 7.1.1
Android Gradle Plugin 4.2.2
AndroidX Compat Library 1.3.1
AndroidX WebKit Library 1.4.0
Google Services Gradle Plugin 4.3.8
Java Development Kit (JDK) 11
Node.js 12.0.0以上

10.0.x

22(5.1)-30(11.0)

Build Tools 30.0.3 以上、31.0.0未満
Kotlin 1.5.20
Gradle 7.1.1
Android Gradle Plugin 4.2.2
AndroidX Compat Library 1.3.0
AndroidX WebKit Library 1.4.0
Google Services Gradle Plugin 4.3.5
Java Development Kit (JDK) 11
Node.js 12.0.0以上

9.x.x

22(5.1)-29(10.0)

-

8.x.x

19(4.4)-28(9.0)

-

7.x.x

19(4.4)-27(8.1)

-

6.x.x

16(4.1)-26(8.0)

-

5.x.x

14(4.0)-23(6.0)

-

4.1.x.x

14(4.0)-22(5.1)

-

4.0.x.x

10(2.3.3)-22(5.1)

-

3.7.x.x

10(2.3.3)-21(5.0)

-

参考:https://cordova.apache.org/docs/en/12.x-2025.01/guide/platforms/android/index.html

  • iOS

Cordova-iOS version

iOS Minimum-Support

ツールのバージョン

7.x

11.0

Cocoapods 1.8.0以上
ios-deploy 1.9.2以上
Node 16.13.0以上
Xcode (xcodebuild) 11.0.0以上

6.x

11.0

Cocoapods 1.8.0以上
ios-deploy 1.9.2以上
Node 10.0.0以上
Xcode (xcodebuild) 11.0.0以上

5.x

10.0

Cocoapods 1.0.1以上
ios-deploy 1.9.2以上
Node 6.0.0 以上
Xcode (xcodebuild): >=10.0.0

参考:https://cordova.apache.org/docs/en/12.x-2025.01/guide/platforms/ios/index.html

  • Electron

OS

システム要件

Linux

Python 2.7.x

Mac

TLS1.2をサポートするPython2.7.x
Xcode 8.2.1 以上
Red Hat Build サポート(Homebrew、rpm)

Windows

Python 2.7.10以上
PowerShell 3.0以上
Debugging Tools for Windows(Windows SDK 10.0.15063.468)

参考:https://cordova.apache.org/docs/en/12.x-2025.01/guide/platforms/electron/index.html

Apache Cordovaのライセンス

Apache CordovaはApache License 2.0に基づいて公開され、営利・非営利を問わず、 誰でも自由かつ無償で利用・改変・再配布可能です。

オープンソース年間サポートサービス

OpenStandiaではOSSを安心してご利用いただけるように、オープンソース年間サポートサービスをご提供しております。
サポートしているOSSは下記ページをご参照ください。

お気軽にお問い合わせください

関連OSS

  • Ionic

    Ionic

    アイオニック。HTML5を活用したハイブリッドなモバイルアプリケーションを開発するためのオープンソースのフレームワークです。

  • Electron

    Electron

    エレクトロン。2013年にGithub社によって公開されたマルチプラットフォーム(Windows, Mac, Linux)なデスクトップアプリケーションを開発できるオープンソースライブラリです。

  • Apache Axis
    サポート対象

    Apache Axis

    アパッチ アクシス。JavaとXML技術に基づいたWebサービスのフレームワークです。

オープンソースに関するさまざまな課題、OpenStandiaがまるごと解決します。
下記コンテンツも
あわせてご確認ください。