.NET 開発基盤部会 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

モバイルアプリのための万能ツールではなく、
ハイブリッドアプリを開発するためのフレームワーク。

経緯

PhoneGap?

PhoneGap?はCordovaベースのAdobe製品版。

サービス

以下の様なサービスも提供されている。

プラットフォーム

サポート

プラットフォームのすべての機能をサポートしているわけではない。

実機・エミュレーター

Androidアプリ

iOSアプリ

Windowsアプリ

開発

開発ツール

Cordova CLI

IDE

だけ利用するでも開発可能だが、

Cordovaフレームワーク

cordova.js

devicereadyイベント

プラグインの利用

Cordovaフレームワークに組み込まれていたネイティブ機能も含め、
Cordova3.0からは、ネイティブ機能を提供するものはすべてプラグインとして管理されるようになっている。

プラグインのパッケージ

公式で提供されているプラグイン

#プラグイン名概要リポジトリのURL
1Accelerometer加速度センサhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-device-motion.git
2Cameraカメラhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-camera.git
3Captureカメラ・録音https://git-wip-us.apache.org/repos/asf/cordova-plugin-media-capture.git
4Compassコンパスhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-device-orientation.git
5Connectionネットワーク接続https://git-wip-us.apache.org/repos/asf/cordova-plugin-network-information.git
6Contactsコンタクトhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-contacts.git
7Deviceデバイス情報https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git
8Eventsイベントhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-battery-status.git
9Fileファイルストレージhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-file.git
10ファイルトランスファーhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-file-transfer.git
11Geolocation位置情報https://git-wip-us.apache.org/repos/asf/cordova-plugin-geolocation.git
12Globalization国際化https://git-wip-us.apache.org/repos/asf/cordova-plugin-globalization.git
13InAppBrowser?アプリ内ブラウザhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-inappbrowser.git
14Media音声・動画https://git-wip-us.apache.org/repos/asf/cordova-plugin-media.git
15Notificationアラート・ダイアログhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-dialogs.git
16バイブレーションhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-vibration.git
17Splashscreenスプラッシュスクリーンhttps://git-wip-us.apache.org/repos/asf/cordova-plugin-splashscreen.git

cordova pluginコマンドで管理

プロジェクト構造

#ファイル・フォルダ説明
1config.xml各プラットフォームに展開されるCordova用設定ファイル。
2wwwフォルダHTML5リソースやアプリ設定に関するファイルが格納される。
ルートフォルダに配置したHTMLファイルなどがアプリとして表示される。
3pluginsフォルダプラグインが格納されている。
4mergesフォルダHTML5側をプラットフォームごとに切り替える。
wwwディレクトリがプラットフォームごとにコンパイルされる際、
ここに格納されている各プラットフォーム特有のリソースがマージされる。
5platformsフォルダネイティブ側をプラットフォームごとに切り替える。
各プラットフォーム特有のプロジェクトファイルが格納される。

config.xml

wwwフォルダ

以下の中身を読んで理解する。

pluginsフォルダ

Cordovaで利用するプラグインやその設定ファイルを格納する。

mergesフォルダ

HTML5側をプラットフォームごとに切り替える。

platformsフォルダ

ネイティブ側をプラットフォームごとに切り替える。

#ファイルのパスサイズ
1drawable-ldpi/icon.png36*36px
2drawable-mdpi/icon.png48*48px
3drawable-hdpi/icon.png72*72px
4drawable-xhdpi/icon.png96*96px
#ファイルのパスサイズ
1icon.png57*57px
2icon@2x.png114*114px
3icon-72.png72*72px
4icon-72@2x.png144*144px
#9-patchファイルのパスサイズ(縦*横)
1drawable-ldpi/splash.9.png426*320px
2drawable-mdpi/splash.9.png470*320px
3drawable-hdpi/splash.9.png640*480px
4drawable-xhdpi/splash.9.png960*720px
#pngファイルのパスサイズ(縦*横)
1Default-568h@2x~iphone.png640*1136px
2Default-Landscape~ipad.png1024*748px
3Default-Landscape@2x~ipad.png2048*1496px
4Default-Portrait~ipad.png768*1004px
5Default-Portrait@2x~ipad.png1536*2008px
6Default~iphone.png320*480px
7Default@2x~iphone.png640*960px

プラグイン開発

開発手順

ネイティブ・アクセス部分

方式

処理方式

以下のサイト情報から、2つの方式が確認できる。

SPA型

ローカルにある静的なHTMLとWebAPI(JSON)によって機能する。

Web型

Webアプリケーションの画面をホストする。

画面遷移

ブラウザの履歴

localのhtmlファイルに画面遷移

jQuery Mobile

認証

OAuth2/OIDC

OAuth2/OIDC以外

パッケージ管理

Browser

ブラウザ内で使用するJavaScriptの管理に使用。

npm

外部ツール(node.js製)の管理に使用。

参考

参考

Qiita

HTML5Experts.jp

Build Insider

第4章 Cordovaを用いたアプリ開発の流れ

第11章 JavaScriptとネイティブとのブリッジ

Cordova (PhoneGap)ではなく、WebViewの話題っぽい。

CodeZine? Apache Cordovaで本格スマホアプリに挑戦しよう

第1回:Apache Cordovaで本格スマホアプリに挑戦しよう

https://codezine.jp/article/detail/9218

第2回:Apache Cordovaでスマホアプリ開発を始める前の環境設定

https://codezine.jp/article/detail/9327

第3回:カメラプラグインを使って、Apache Cordovaのサンプルアプリを作ってみよう

https://codezine.jp/article/detail/9368

第4回:基本のプラグインを使ってハイブリッドアプリを作ってみよう

https://codezine.jp/article/detail/9412

第5回:Apache Cordova+AngularJSでローカルファイルにアクセスするプラグインを使おう

https://codezine.jp/article/detail/9454

第6回:ファイルを操作するためのプラグインで、テキストや画像をアプリ内に保存する

https://codezine.jp/article/detail/9527

第7回:ハイブリッドアプリ開発でファイルのアップロード、ダウンロードを便利にするプラグインを使う

https://codezine.jp/article/detail/9577

第8回:ハイブリットアプリ開発でオーディオファイルの再生を便利にするプラグインを使う

https://codezine.jp/article/detail/9593

第9回:マイクやカメラを使って音声・写真・ビデオデータを取得するプラグインを使う

https://codezine.jp/article/detail/9701

第10回:カメラとアルバムから写真データを取得するプラグインを使う

https://codezine.jp/article/detail/9780

第11回:連絡先データにアクセスするプラグインを使う

https://codezine.jp/article/detail/9838

第12回:カレンダーの予定を管理するプラグインを使う

https://codezine.jp/article/detail/9886

第13回:カレンダーを管理するプラグインを使って、予定の追加と削除を行う

https://codezine.jp/article/detail/9929

第14回:Cordovaでアプリを公開するためのビルド方法をカスタマイズしよう

https://codezine.jp/article/detail/9970


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS