プロジェクトメタデータを設定する
AndroidプロジェクトのファイルでPhoneGapを使用するための設定は終了しました。最後に、プロジェクトメタデータを設定してPhoneGapを有効にします。
supports-screen XMLノードは、アプリケーションでサポートされる画面サイズを識別します。画面およびフォームファクターのサポートはこのエントリの内容を編集することで変更できます。<supportsscreens>について詳しくは、Android Developersサイトのsupports-screen要素に関するトピックを参照してください。
<uses-permission>XML値は、アプリケーションで有効にする機能を識別します。上記の行は、PhoneGapのすべての機能が動作するために必要なすべての許可を有効にします。アプリケーションの作成後、実際に使用しない許可は削除できます。これにより、アプリケーションのインストール時のセキュリティ警告も削除されます。Androidの許可と<uses-permission>要素について詳しくは、Android Developersサイトのuses permission要素に関するトピックを参照してください。
-
まず、プロジェクトのルートにあるAndroidManifest.xmlファイルを開きます。AndroidManifest.xmlファイルを右クリックし、Open With(アプリケーションから開く)/Text Editor(テキストエディター)を選択して、Eclipseのテキストエディターを開きます。
-
AndroidManifest.xmlで、ルートのmanifestノードの子として、次のsupports-screen XMLノードを追加します。
<supports-screens android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:resizeable="true" android:anyDensity="true" />
-
次に、PhoneGapアプリケーションの許可を設定する必要があります。次の<uses-permission>XMLノードをコピーし、AndroidManifest.xmlファイルの、ルートの<manifest>ノードの子としてペーストします。
<uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.RECEIVE_SMS" /> <uses-permission android:name="android.permission.RECORD_AUDIO" /> <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> <uses-permission android:name="android.permission.READ_CONTACTS" /> <uses-permission android:name="android.permission.WRITE_CONTACTS" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.GET_ACCOUNTS" /> <uses-permission android:name="android.permission.BROADCAST_STICKY" />
-
アプリケーションの許可を設定したら、既存の<activity>ノードを変更する必要があります。<application>XMLノードの子である<activity>ノードを探します。<activity>ノードに次の属性を追加します。
configChanges="orientation|keyboardHidden"
-
次に、org.apache.cordova.DroidGapクラスの2番目の<activity>ノードを作成します。既存の<activity>XMLノードの兄弟として次の<activity>ノードを追加します。
<activity android:name="org.apache.cordova.DroidGap" android:label="@string/app_name" android:configChanges="orientation|keyboardHidden"> <intent-filter></intent-filter> </activity>
この時点で、プロジェクトがAndroid用のPhoneGapプロジェクトとして機能するように設定されました。問題が発生した場合は、Android向けPhoneGapスタートガイドのサイトに掲載されている例を参照して設定を確認してください。
アプリケーションを実行する
AndroidエミュレーターでPhoneGapアプリケーションを起動するには、プロジェクトのルートを右クリックし、Run As(実行)/Android Application(Androidアプリケーション)を選択します(図11を参照)。
Android仮想デバイスがセットアップされていない場合は、設定するよう要求されます。Androidエミュレーターの仮想デバイスを設定する方法について詳しくは、Android Developersサイトのデバイス管理に関するトピックを参照してください。
Androidエミュレーターのインスタンスが自動的に開始し(まだ実行されていない場合)、アプリケーションがエミュレーターに展開されて起動します(図12を参照)。
Androidエミュレーターでアプリケーションが稼動したら、次は実際のデバイスでテストします。アプリケーションを実稼働環境に展開する前に、必ず実際のデバイスでテストすることをお勧めします。実際のデバイスには、エミュレーターとは異なる計算機能やフォームファクターがあるため、デバイスでテストすることによってエミュレーター環境では検出できなかった問題が明らかになる場合があります。
次の手順に従って、アプリケーションを実際のAndroidデバイスで起動します。
- USBでコンピューターに接続されていることを確認します。
-
Run(実行)/Run Configurations(実行の構成)を選択します(図13を参照)。
- Run Configurations(実行構成)ダイアログボックスの左側の「Android Application(Androidアプリケーション)」から、目的のアプリケーションを選択します。
- 「Target(ターゲット)」タブをクリックし、「Deployment Target Selection Mode(展開ターゲット選択モード)」で「Manual(手操作)」を選択します。
-
アプリケーションを起動する準備が整ったら、「Run(実行)」をクリックします(図14を参照)。
Android Device Chooser(Androidデバイス選択)ダイアログボックスで、エミュレーターか接続されているAndroidデバイスを選択できます。接続されているすべてのAndroidデバイスがこのリストに表示されます。
- 使用するデバイスを選択し(図15を参照)、「OK」をクリックします。
PhoneGapアプリケーションがデバイスにインストールされ、起動します。
次のステップ
ここまで理解したら、PhoneGapを使用して実際のアプリケーションを構築できます。次のステップとして、『ネイティブプラグインでPhoneGapを拡張する(Android)』をご覧ください。
繰り返しますが、PhoneGapアプリケーションのユーザーインターフェイスはHTML、CSSおよびJavaScriptで構築されています。したがって、デベロッパーは従来のWeb開発スキルを活用して魅力的なアプリケーションを簡単に作成できます。PhoneGapについて詳しくは、PhoneGap wikiを参照してください。また、PhoneGap User Groupへの参加やPhoneGapマニュアルの確認も役立ちます。
また、Adobe Developer ConnectionにPhoneGapデベロッパーセンターも開設されています。PhoneGap関連の記事はこちらで随時紹介していく予定ですので、ぜひご参照ください。
この作品はCreative Commons Attribution-Noncommercial-Share Alike 3.0 Unported Licenseに基づき使用が許可されます。この作品に含まれるサンプルコードに関して、このライセンスの範囲を超えた使用の許可については、アドビのWebサイトを参照してください。