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

目次

概要

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

サポート

プラットフォーム

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

実機・エミュレーター

iOSアプリ

Androidアプリ

Windowsアプリ

Browser

開発

IDE

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

Cordovaフレームワーク

cordova.js

devicereadyイベント

プロジェクト構造

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

config.xml

#項目名概要
1widget・id:アプリの識別子
・version:バージョン番号
2nameアプリ名
3descriptionアプリの概要
4authorアプリの作成者
5contentアプリ起動時、最初にロードするコンテンツ(index.htmlなど)。
・外部のURL(http://・・・)で外部のコンテンツを表示できる。
・外部のURLの場合は、下記ホワイトリストの指定が必要。
6access・ホワイトリスト指定(http://aaa.bbb.comhttp://xxx.yyy.com)。
・*は制限なし。ドメイン指定も可能(http://*.xxxx.com)。
7preference実行時のフレームワークの挙動を設定。
・name:設定名
・value:設定値
8featureプラグインの有効化
9allow-intentURLSchemeで別アプリを起動する際に予め定義。
10platform特定のプラットフォームのみに反映する場合に利用

wwwフォルダ

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

pluginsフォルダ

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

mergesフォルダ

プラットフォーム特有のHTML5リソースを配置

platformsフォルダ

#項目名概要
1loadingDialogアプリの読み込み中に、ネイティブのロード中を表すダイアログ表示
2loadingPageDialog?HTMLページの読み込み中に、ネイティブのロード中を表すダイアログを表示
3errorUrlアプリのエラーページ(wwwディレクトリからの相対パス)
4backgroundColorアプリの背景色を指定
5loadUrlTimeoutValue?アプリの読み込みのタイムアウト値設定
6keepRunning・バックグラウンド実行の設定。
・trueかfalseを指定。デフォルトはtrue(バックグラウンドでも実行)。
7splashscreen・splashscreenの画像
・res/drawableディレクトリ以下・拡張子無し。
8disallowOverscroll (boolean, defaults to false):・オーバースクロール時の表現。
・trueかfalseを指定。デフォルトはfalse(表現しない)。
#項目名概要
1DisallowOverscroll?・オーバースクロール時の表現。
・trueかfalseを指定。デフォルトはfalse(表現しない)。
2TopActivityIndicator?・ステータスバーに表示されるインジケータの種類を設定。
・有効な値は、whiteLargeとwhiteとgray。デフォルトはgray。
3EnableViewportScale?・metaタグによるviewportのスケールの有効・無効。
・trueかfalseを指定。デフォルトはfalse(metaタグでスケールする)。
4AutoHideSplashScreen?・スプラッシュスクリーンを消すタイミングをJavaScriptから指定する・しない。
・trueかfalseを指定。デフォルトはtrue(JavaScriptから指定しない)。
%FadeSplashScreen?・スプラッシュスクリーンをフェードイン・フェードアウトさせるかどうか。
・trueかfalseを指定。デフォルトはtrue(フェードイン・フェードアウトさせる)。
6FadeSplashScreenDuration?・スプラッシュスクリーンのアニメーションの長さを秒数で指定。
・デフォルトは2。小数点も指定可能。
7ShowSplashScreenSpinner?・スプラッシュスクリーンの上にスピナー表示する・しない。
・trueかfalseを指定。デフォルトはtrue(スピナー表示する)。
8MediaPlaybackRequiresUserAction?・HTML5videoタグの自動再生を許可する・しない。
・trueかfalseを指定。デフォルトはfalse(自動再生を許可する)。
9AllowInlineMediaPlayback?・HTML5videoタグでのプレイバックを許可する・しない。
・HTML側のvideoタグ属性にwebkit-playsinlineの追加が必要。
・trueかfalseを指定します。デフォルトはfalse(自動再生を許可しない)。
10BackupWebStorage?・Webストレージのバックアップ場所を設定。
・noneとcloud(iCloud)とlocal(iTunes経由)のいずれかを指定。デフォルトはfalse(自動再生を許可しない)。
11KeyboardDisplayRequiresUserAction?JavaScriptのfocusメソッドで、ソフトウェアキーボードを表示する・しない。
・trueかfalseを指定。デフォルトはtrueです(表示しない)。
12SuppressesIncrementalRendering?・すべてのビューを受け取ってからアプリ内部のHTMLをレンダリングする・しない。
・trueかfalseを指定。デフォルトはfalse(すべてのビューを受け取ってからレンダリング)。
13HideKeyboardFormAccessoryBar?・ソフトウェアキーボードの上に表示されるツールバーを表示する・しない。
・trueかfalseを指定。デフォルトはfalse(表示する)。
14KeyboardShrinksView?・ソフトウェアの大きさに合わせてWebViewの高さを変更する・しない。
・trueかfalseを指定。デフォルトはfalse(変更しない)。
#ファイルのパスサイズ
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

詳細

参考

Qiita

[iOS/Android対応] HTML5 ハイブリッドアプリ開発[実践]入門

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

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

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


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