Monaca Docs
検索
⌃K

Hello World アプリ

このサンプルアプリは、基本プラグインのデモ用アプリです。デモとして、複数の端末機能を実装させています。

デモ

テスト環境
  • Android 11.0
  • iOS 14.3
index.html
phonegap-demo.html

ファイル構成

ファイル
説明
index.html
スタート画面のページ
phonegap-demo.html
基本プラグイン デモ画面ページ
phonegap-demo/master.css
基本プラグイン デモ画面ページのスタイルシート
phonegap-demo/main.js
基本プラグイン デモ画面ページ上の一連の処理を行う JavaScript ファイル
css/style.css
アプリに適用する共通スタイルシート
img/icon/*.png
アイコン用のファイル

必要な JS/CSS コンポーネント

  • jQuery

HTML の解説

index.html

index.html はスタート画面のページです。ソースコードを次に記します。
<body>
<h1>HelloWorld!</h1>
<a class="button--large" href="phonegap-demo.html">Start Demo</a>
</body>
上記 HTML コードの <body> タグ内の記述で、HelloWorld!Start Demoボタンの表示を、次のように行います。

phonegap-demo.html

phonegap-demo.html を使用して、携帯端末の基本情報と次に列挙した機能を、基本プラグイン デモ画面ページに表示します。
  • 位置情報の取得: 携帯端末の現在の位置情報の取得
  • 電話 ( 411 ): 電話番号 411 の呼び出し
  • バイブレーション: 携帯端末の振動
  • 写真の撮影: 携帯端末のカメラの起動
  • ネットワークの確認: 携帯端末が接続を行っている、現在のネットワークタイプの確認
これらの機能を記述した JavaScript コードに関しては、後ほど説明します。

JavaScript の解説

main.js は、基本プラグイン デモ画面ページで使用する一連の処理を記述した JavaScript ファイルです。このファイルでは、前述した 5 個の機能を記述しています。

位置情報の取得

携帯端末の位置情報を取得します。この関数の JavaScript コードは次のとおりです。
...
var getLocation = function() {
var suc = function(p) {
alert(p.coords.latitude + " " + p.coords.longitude);
};
var locFail = function() {
};
navigator.geolocation.getCurrentPosition(suc, locFail);
};
...
Get Locationボタンをクリックすると、現在の位置情報を示したメッセージが次のように表示されます。

電話 ( 411 )

411 に電話します。この関数の JavaScript コードを次に記します。
...
<a href="tel:411" class="btn large">Call 411</a>
...
href="tel:411" を使うためには、以下の設定が必要です config.xml
<allow-intent href="tel:*" />
Call 411ボタンをクリックすると、電話するかを確認するメッセージを表示します。

バイブレーション

携帯端末を振動させます。この関数の JavaScript コードを次に記します。
...
var vibrate = function() {
navigator.vibrate(500);
};
...
Vibrateボタンをクリックすると、携帯端末が振動します。

写真の撮影

携帯端末搭載のカメラを起動します。この関数の JavaScript コードを次に記します。
...
function dump_pic(data) {
var viewport = document.getElementById('viewport');
console.log(data);
viewport.style.display = "";
viewport.style.position = "absolute";
viewport.style.top = "10px";
viewport.style.left = "10px";
document.getElementById("test_img").src = data;
}
function fail(msg) {
alert(msg);
}
function show_pic() {
navigator.camera.getPicture(dump_pic, fail, {
quality : 50
});
}
...
Get a Pictureボタンをクリックすると、携帯端末のカメラが起動します。写真を撮り、画面上に表示する場合には、次のスクリーンショット ( 画像 1 枚目、赤い囲み ) のようになります。表示しない場合には、メッセージが次 ( 画像 2 枚目 ) のように表示されます。

ネットワークの確認

携帯端末が現在使用してるネットワークの種類を確認します。この関数の JavaScript コードを次に記します。
...
function check_network() {
var networkState = navigator.network.connection.type;
var states = {};
states[Connection.UNKNOWN] = 'Unknown connection';
states[Connection.ETHERNET] = 'Ethernet connection';
states[Connection.WIFI] = 'WiFi connection';
states[Connection.CELL_2G] = 'Cell 2G connection';
states[Connection.CELL_3G] = 'Cell 3G connection';
states[Connection.CELL_4G] = 'Cell 4G connection';
states[Connection.NONE] = 'No network connection';
confirm('Connection type:\n ' + states[networkState]);
}
...
Check Networkボタンをクリックすると、現在接続しているネットワークの種類を表示します。