PhoneGap/Cordova
モバイルデバイス用のアプリの作成を学び始めました。
テストアプリ(cordova create)を作成し、簡単な関数でjavascriptファイルを追加しました。
ファイル test1.js:
function doalert() {
alert("Test1 alert!");
}
次に、ボタンを生成された index.html + 含まれている前述の js スクリプト ファイルに配置します。
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *">
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no">
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width">
<link rel="stylesheet" type="text/css" href="css/index.css">
<title>rth Test1</title>
<script type="text/javascript" src="js/test1.js"></script>
</head>
<body>
<div class="app">
<h1>Apache Cordova</h1>
<div id="deviceready" class="blink">
<p class="event listening">Connecting to Device</p>
<p class="event received">Device is Ready</p>
</div>
</div>
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="js/index.js"></script>
<button type="button" onclick="doalert()">Alert</button>
</body>
</html>
ご覧のとおり、button はアラートを表示する doalert() 関数を呼び出す必要があります。
ここに問題があります:
このプロジェクトを Android アプリケーション (apk) にビルドし、エミュレーターまたはデバイスにインストールすると、期待どおりに動作しません。アプリケーションが起動し、「デバイスの準備ができました」と表示されます。しかし、ボタンをタップしても何も起こりません (JavaScript 関数が呼び出されていないようです)。
ブラウザー (Firefox) から実行する場合、または PhoneGap サーバー (クライアント アプリケーション) を使用する場合、すべて正常に動作します。
apk の内部を確認しましたが、すべてのファイルが配置されているようです。
以下のソフトウェアバージョンを使用:
アンドロイド: 4.4.4 コルドバ: 4.0.0