Oracle® Fusion Middleware Oracle Application Development Frameworkモバイル開発者ガイド 11g リリース2 (11.1.2.4.0) B70750-02 |
|
前 |
次 |
この章では、アプリケーションの開発とデプロイのためのADFモバイル環境の設定方法について説明します。
この章には次の項が含まれます:
ADFモバイル・アプリケーションを開発する前に、様々なソフトウェア・コンポーネントをダウンロード、インストールおよび構成することで、開発環境を設定する必要があります。
開発環境を設定するには、第3.2項「ADFモバイル・アプリケーション開発の前提条件」に記載されている手順を実行した後、モバイル・デバイスまたはそのシミュレータを準備します。
ADFモバイル・アプリケーション開発の前提条件は、実行を計画している作業のタイプや、ターゲットのプラットフォームによって異なります。
iOSに対応したADFモバイル・アプリケーションの作成を開始する前に、次のものが使用可能であることを確認します。
Mac OS Xが稼働しているコンピュータ
Oracle JDeveloper (第3.3項「JDeveloperの設定」を参照)。
ADFモバイル用のOracle JDeveloper拡張機能(第3.3項「JDeveloperの設定」を参照)
Xcode (第3.4.1項「Xcodeのインストール方法」を参照)
iOS SDK (第3.4.2項「iOS SDKのインストール方法」を参照)
詳細は、第3.4項「iOSプラットフォーム用の開発ツールの設定」を参照してください。
ターゲット・プラットフォームがAndroidの場合は、次が必要です。
次のいずれかのオペレーティング・システムが稼働しているコンピュータ
Microsoft Windows XP
Microsoft Windows Vista
Microsoft Windows 7
Mac OS X
JDK1.6の最新バージョン
Platform 2.3以降のAndroid SDKとそのツール(第3.5.1項「Android SDKのインストール方法」を参照)
Oracle JDeveloper (第3.3項「JDeveloperの設定」を参照)。
ADFモバイル用のOracle JDeveloper拡張機能(第3.3項「JDeveloperの設定」を参照)
詳細は、第3.5項「Androidプラットフォーム用の開発ツールの設定」を参照してください。
特定タイプのADFモバイル・アプリケーション・コンテンツ(HTML、リモートURLまたはADFモバイルAMX)を作成するために、追加のツールをインストールする必要はありません。詳細は、第5.9項「アプリケーション機能のコンテンツ・タイプの定義」を参照してください。
注意: PhoneGapはApache Cordovaに吸収されたため、PhoneGapプラグインがインストールされている場合は、それらをCordova 2.2バージョンに移行する必要があります。 |
ADFモバイル・アプリケーションをデプロイする(第4章「ADFモバイル・アプリケーション開発の開始」を参照)前に、次のものが使用可能であることを確認します。
第3.2.1項「アプリケーションの作成に必要なもの」にリストされているすべてのコンポーネント
ADFモバイル・アプリケーション
各種ログイン資格証明詳細は、第17章「ADFモバイル・アプリケーションのデプロイ」を参照してください。
(オプション) iOSまたはAndroidデバイス
Oracle JDeveloperとそのADFモバイル拡張機能は、ADFモバイル・アプリケーションの開発に不可欠なツールです。
始める前に:
第3.2.1項「アプリケーションの作成に必要なもの」にリストされているターゲット・プラットフォーム用のソフトウェアと互換性があるOracle JDeveloperのリリースを確認するには、Oracle JDeveloperおよびADFの動作保証およびサポート・マトリクスを参照してください。
Oracle JDeveloperの適切なリリースをダウンロードし、インストールします。要求されたら、「Studio開発者(すべての機能)」ロールを選択します。
詳細は、次を参照してください:
ターゲット・プラットフォームがiOSの場合は、『Oracle Fusion Middleware Oracle JDeveloperインストレーション・ガイド』のMac OS Xプラットフォーム上のOracle JDeveloperの使用方法に関する項を参照してください。
ターゲット・プラットフォームがAndroidの場合は、『Oracle Fusion Middleware Oracle JDeveloperインストレーション・ガイド』を参照してください。
ADFモバイル拡張機能をダウンロードしてインストールするには:
JDeveloperで、「ヘルプ」、「更新のチェック」の順に選択して、「次へ」をクリックします。
注意: プロキシ設定を構成する必要がある場合は、メイン・メニューから「ツール」→「プリファレンス」を選択し、「プリファレンス」ダイアログの左側のツリーから「Webブラウザとプロキシ」を選択します。 |
図3-1に示す「ソース」ページで、「更新センターの検索」の公式のOracle拡張機能と更新を選択して、「次へ」をクリックします。
ネットワークにアクセスできない場合は、「ローカル・ファイルからインストール」オプションを選択できます。この場合、開発用コンピュータ上のディレクトリにすでにダウンロードされているADFモバイル拡張機能ファイルを指定する必要があります。
「更新」ダイアログで、「ADFモバイル」の更新を選択します。
図3-2に示す「ライセンス契約」ページで、Oracleモバイルに関するOracleテクノロジ・ネットワーク・ライセンス条項を確認します。
注意: Oracle ADFモバイル・プログラムに関するすべてのライセンス条項および条件( |
「同意する」をクリックします。
「次へ」を選択して「終了」をクリックします。
JDeveloperを再起動します。
JDeveloperにADFモバイルが正しく追加されていることを確認します。
メイン・メニューから「ファイル」→「新規」を選択して、「新規ギャラリ」を開きます。
「すべての機能」タブを選択します。
「カテゴリ」ペインで、「クライアント層」ノードを開き、「ADFモバイル」が含まれていることを確認します(図3-3参照)。
さらに、正しいバージョンのADFモバイルがインストールされていることを確認します。このためには、メイン・メニューから「ヘルプ」→「バージョン情報」を選択して、「Oracle JDeveloperのバージョン情報」ダイアログで「拡張」タブを選択し、「ADFモバイル」までスクロールして拡張機能リストのエントリを調べます(図3-4参照)。
前述の手順に加え、開発環境をターゲット・プラットフォームおよびフォーム・ファクタに応じて構成する必要があります。詳細は、第3.3.1項「プラットフォームとフォーム・ファクタに応じた開発環境の構成方法」を参照してください。
ADFモバイル・アプリケーションの開発を開始する前に、該当するプラットフォーム(第3.3.1.2項「ターゲット・プラットフォームに応じた環境の構成」を参照)とフォーム・ファクタ(see 第3.3.1.1項「フォーム・ファクタに応じた環境の構成」を参照)に対応するJDeveloperプリファレンスを構成する必要があります。
フォーム・ファクタとは特定のデバイス構成のことです。各フォーム・ファクタは指定した名前で識別され、ここには、ピクセル単位の幅と高さで表された指定解像度に関する情報が含まれています。
プリファレンスで定義されたフォーム・ファクタは、「ADFモバイルAMX」ページの「プレビュー」タブで使用されます(第6.3.2.2項「「プレビュー」の使用方法」を参照)。様々なフォーム・ファクタを選択したり切り替えたりすると、各フォーム・ファクタで「ADFモバイルAMX」ページをレンダリングする方法を確認できます。分割画面ビューを使用すると、同じページに適用された複数のフォーム・ファクタを確認することもできます。
詳細は、第5.11.1項「adfmf-config.xmlファイルについて」を参照してください。
始める前に:
第3.3項「JDeveloperの設定」の説明に従って、JDeveloperとADFモバイル拡張機能をダウンロードしてインストールします。
フォーム・ファクタを構成するには:
JDeveloperのメイン・メニューから「ツール」→「プリファレンス」を選択して、「プリファレンス」を開きます。
「プリファレンス」ダイアログ(図3-5を参照)で、左側のツリーから「ADFモバイル」を選択します。
「ADFモバイル」ページにはデフォルト設定が移入されています。
このプリファレンス・ページでは、画面解像度サイズとプラットフォームを結合する一連の名前付きフォーム・ファクタを作成して管理できます。
新しいフォーム・ファクタを作成するには、「新規」をクリックして、次の項目を設定します。
名前: フォーム・ファクタの識別に使用する意味のある文字列。
プラットフォーム: モバイル・デバイスのプラットフォーム。
モデル: モバイル・デバイスのタイプ。
デフォルトの向き: 「ADFモバイルAMX」ページの「プレビュー」タブで使用されるデバイスのデフォルトの向き。「縦」または「横」です。この設定は値のドロップダウン・リストから選択します。デフォルト値は「縦」で、新しいフォーム・ファクタの作成時にはこの値が移入されます。
解像度の幅: ピクセル単位で表された幅。値は正の整数である必要があり、入力は検証されます。
解像度の高さ: ピクセル単位で表された高さ。値は正の整数である必要があり、入力は検証されます。
スケール係数: 表示のスケール係数。この値は、1.0、2.0、3.0のいずれかにする必要があります。
注意: フォームに名前と解像度が設定されていない場合、ADFモバイルからエラー・メッセージが表示されます。 |
デフォルト設定に戻す必要がある場合は、「その他のアクション」→「デフォルトに戻す」をクリックします。
「OK」をクリックして、設定を終了します。
ADFモバイルによってサポートされるいずれかのプラットフォームに対する開発を開始するには、プラットフォームの名前や、プラットフォーム固有のツールやデータを格納するための開発用コンピュータ上のディレクトリなどの情報を、JDeveloperに提供する必要があります。
始める前に:
第3.3項「JDeveloperの設定」の説明に従って、JDeveloperとADFモバイル拡張機能をダウンロードしてインストールします。
ターゲット・プラットフォームに応じた開発環境を構成するには:
JDeveloperのメイン・メニューから「ツール」→「プリファレンス」を選択して、「プリファレンス」を開きます。
「プリファレンス」ダイアログ(図3-5を参照)で、ツリーから「ADFモバイル」を選択します。開いた「ADFモバイル」ページには、デフォルトのフォーム・ファクタ設定が移入されています。
ツリーから「プラットフォーム」を選択して「ADFモバイル: プラットフォーム」ページを開きます。このページには、サポートされるプラットフォームのパスと構成パラメータが含まれています(図3-6および図3-7を参照)。
各プラットフォーム固有のページには、プラットフォームSDK (AndroidまたはiOS)のプリファレンスが表示されます。ここには、ADFモバイルがAndroidまたはiOSプロジェクトのコンパイルおよびデプロイのために必要とするパスなどの必要情報が集められています。
サポートされるプラットフォームのリストから「Android」を選択した場合は、コンピュータ上のAndroid SDKの場所とターゲットのAndroidプラットフォームのローカル・ディレクトリを指定し、署名資格証明に関する情報を入力します(図3-6を参照)。
サポートされるプラットフォームのリストから「iOS」を選択した場合(図3-7を参照)は、次の項目を指定します。
Mac OSコンピュータ上のiOSシミュレータSDKの場所
Xcodebuildユーティリティの場所(第17.4.1項「iOSシミュレータへのiOSアプリケーションのデプロイ方法」を参照)
iTunesメディア・ファイルの場所(iOSデバイスに同期化されるモバイル・アプリケーションを含む)
iOSデバイスの署名情報(第17.2.4.2項「デバイス署名オプションの設定」を参照)
iOSプラットフォーム用のADFモバイル・アプリケーションの開発に向けて準備を行う場合には、第3.2項「ADFモバイル・アプリケーション開発の前提条件」に示した一般目的のツールに加えて、iPhoneまたはiPadの設定を行う場合もあります(第3.4.3項「iPhoneまたはiPadの設定方法」を参照)。
iOS SDKインストール内にはiPhoneおよびiPadのシミュレータが含まれているので、これらを別途インストールする必要はありません。詳細は、第3.4.4項「iPhoneまたはiPadシミュレータの設定方法」を参照してください。
Xcodeは、http://developer.apple.com/xcode/
からダウンロードできます。
Xcodeをインストールしたら、少なくとも1回はこれを実行して、Appleのライセンスおよび設定ダイアログに入力を行う必要があります。これらの手順を実行していない場合、JDeveloperからXcodeまたはデバイス・シミュレータへの構築およびデプロイ・サイクルが、「リターン・コード: 69」エラーによって失敗します。
注意: Xcodeの以前のバージョンはMac App Storeから入手できないため、それらをダウンロードするには、 |
iOS SDKは、iOS Dev Center (http://developer.apple.com/devcenter/ios/
)からダウンロードできます。
注意: iOS SDKの以前のバージョンはMac App Storeから入手できないため、それらをダウンロードするには、 |
ADFモバイル・アプリケーションの開発およびデプロイメントでは、iPhone、iPadまたはこれらのシミュレータのいずれかを使用できます(第3.4.4項「iPhoneまたはiPadシミュレータの設定方法」を参照)。テストには実際のiPhoneまたはiPadを使用することをお薦めしますが(第19.2項「ADFモバイル・アプリケーションのテスト」を参照)、この場合は、iPhoneまたはiPadをコンピュータと接続して、2つのデバイス間のリンクを確立する必要があります。
iOSデバイスにデプロイするには、有効なライセンス、資格証明および配布プロファイルを備えたiOSデバイスを用意する必要があります。詳細は、第17章「ADFモバイル・アプリケーションのデプロイ」を参照してください。
注意: Apple社のライセンス条項および条件は変更される場合があるため、内容を理解し、それらに従うとともに、最新の変更内容を把握しておく必要があります。 |
ADFモバイル・アプリケーションの開発およびデプロイメントでは、iOSデバイス自体を使用するか(第3.4.3項「iPhoneまたはiPadの設定方法」を参照)、そのシミュレータを使用できます。通常、シミュレータへのデプロイはデバイスへのデプロイよりはるかに高速で、最初にアプリケーションに署名する必要もありません。
シミュレータは自動的に起動できます。追加の設定は必要ありません。
注意: JDeveloperからデバイス・シミュレータにアプリケーションをデプロイする前に、まずシミュレータを実行する必要があります。 |
アプリケーションでWebサービスを使用する予定で、企業のファイアウォールで保護されている環境の場合は、外部ネットワーク・アクセスを構成する必要がある可能性があります。このためには、開発用コンピュータのシステム・プリファレンスでネットワーク設定を変更します。詳細は、『Oracle Fusion Middleware Oracle Application Development Framework Fusion開発者ガイド』のブラウザ・プロキシ情報の設定に関する項を参照してください。
Androidプラットフォーム用のADFモバイル・アプリケーションの開発に向けて準備を行う場合には、第3.2項「ADFモバイル・アプリケーション開発の前提条件」に示した一般目的のツールに加えて、Androidデバイスの設定を行う場合もあります(第3.5.2項「Androidデバイスの設定方法」を参照)。
エミュレータはAndroid SDKインストールに含まれているので、これらを別途インストールする必要はありません。ただし、構成を作成するまでエミュレータは使用できません。詳細は、第3.5.3項「Androidエミュレータの設定方法」を参照してください。
Androidプラットフォーム用の開発を行う場合、JDeveloperとAndroidの両方でサポートされるオペレーティング・システムはどれでも使用できます。
詳細は、Android開発者のWebサイト(http://developer.android.com/tools/index.html
)の「Developer Tools」を参照してください。
Android SDKには、Androidデバイス用のアプリケーションを構築するために必要な開発ツールが含まれています。Android SDKはモジュラなので、ターゲットのAndroidプラットフォームとアプリケーションの要件に応じてコンポーネントを個別にダウンロードできます。
プラットフォームを選択するときには、ADFモバイルがAndroid 2.3以上をサポートしていることに注意します。
始める前に:
使用している環境が、Android開発者のWebサイト(http://developer.android.com/sdk/index.html
)の「Get the Android SDK」にリストされているオペレーティング・システム、JDKバージョンおよびハードウェア要件と適合していることを確認します。
注意: Ant、EclipseおよびLinuxの要件は、ADFモバイルの開発環境には適用できません。 |
Android SDKをインストールするには:
http://developer.android.com/sdk/index.html
から、Android SDKスターター・パッケージをダウンロードします。
Android開発者のWebサイト(http://developer.android.com/sdk/installing.html
)の「Setting Up an Existing IDE」にある手順に従って、インストールを完了します。ADFモバイル・アプリケーションの開発ではEclipseの構成は必要ないので、Android SDKのインストール手順の手順3はスキップします。
ADFモバイル・アプリケーションの開発およびデプロイメントでは、Androidデバイス自体を使用(テストにはこちらをお薦めします。第19.2項「ADFモバイル・アプリケーションのテスト」を参照)するか、エミュレータを使用(第3.5.3項「Androidエミュレータの設定方法」を参照)できます。
Androidデバイスの設定方法の詳細は、Android開発者のWebサイト(http://developer.android.com/tools/device.html
)の「Using Hardware Devices」にある手順を参照してください。
ターゲットのAndroidデバイスがUSBデバイス・ドライバの.inf
ファイル内にリストされていない場合、Androidデバッグ・ブリッジ(ADB)のインストールに失敗してしまいます。この問題の回避方法は次のとおりです。
使用しているデバイスの正しい値を見つけます。
android_winusb.inf
ファイルの[Google.NXx86]
および[Google.NTamd64]
セクションを更新します。
詳細は、Android開発者のWebサイト(http://developer.android.com/sdk/win-usb.html
)の「Google USB Driver」を参照してください。
ADFモバイル・アプリケーションの開発およびデプロイメントでは、Androidデバイス自体を使用するか(第3.5.2項「Androidデバイスの設定方法」を参照)、そのエミュレータを使用できます。通常、エミュレータへのデプロイはデバイスへのデプロイよりはるかに高速で、最初にアプリケーションに署名する必要もありません。
Android Virtual Device (AVD)と呼ばれるエミュレータ構成の作成方法の詳細は、Android開発者のWebサイト(http://developer.android.com/tools/devices/index.html
)の「Managing Virtual Devices」にある手順を参照してください。
アプリケーションをテストする予定のAndroidプラットフォームごとに、AVDを作成する必要があります。
エミュレータの使用方法の詳細は、Android開発者のWebサイト(http://developer.android.com/tools/devices/emulator.html
)の「Using the Android Emulator」を参照してください。
エミュレータを使用すると、次のことが可能です。
エミュレータの状態の保存(第3.5.3.1項「エミュレータの状態の保存」を参照)
SDカードの作成、保存および再使用(第3.5.3.2項「SDカードの作成、保存および再使用」を参照)
ネットワークの構成(第3.5.3.3項「ネットワークの構成」を参照)
ネットワーク・プロキシの構成(第3.5.3.4項「ネットワーク・プロキシの構成」を参照)
エミュレータの状態を保存して保存した状態を再利用できると、便利な場合もあります。このためには、(Windowsコンピュータ上の)C:\Users\
username
\.android\avd
ディレクトリにあるavd
ファイルまたはフォルダを操作します。各avd
フォルダには、userdata.img
、userdata.qemu.img
、cache.img
などの複数のファイルが格納されています。cache.img
ファイルを別のエミュレータのavd
フォルダにコピーして、その状態を別のエミュレータで使用できます。あるいは、コマンドラインから表3-1に示したコマンドを実行することもできます。
表3-1 Androidエミュレータ状態の保存のためのコマンド
コマンド | 説明 |
---|---|
|
すべてのエミュレータ状態のスナップショットが格納されているファイル。 デフォルト値: |
|
スナップショットのストレージ・ファイルがマウントされないようにすることで、すべてのエミュレータ状態のスナップショット機能を無効化します。 |
|
ストレージ・ファイル内のエミュレータ状態のスナップショットの名前(自動起動および自動保存用)。 デフォルト値: |
|
自動保存を実行せずにフル・ブートを実行します。 |
|
終了時にスナップショットへの自動保存を行いません。変更された状態は破棄されます。 |
|
使用可能なスナップショットのリストを表示します。 |
|
リストア時にスナップショット・タイムの修正を行いません。 |
|
使用データ・イメージを |
たとえば、testsnap
スナップショットに保存されている状態を使用して、終了時に自動保存によって保存しなおす場合には、C:\Android\
android sdk directory
\tools>
から次のコマンドを実行します。
emulator -avd Android_2.2_1 -snapshot testsnap
注意: このユーティリティを使用する場合、ロード・プロセスを実行すると、システムのすべてのコンテンツ(ユーザー・データやSDカードのイメージを含む)が、スナップショット作成時に保存されたコンテンツによって上書きされるので注意してください。別のスナップショットに保存していないと、変更内容はすべて失われてしまいます。 |
SDカードを作成、保存および再使用するには、次のコマンドを実行します。
SDカードを作成するコマンドは次のとおりです。
C:\android sdk directory\tools>mksdcard -l SD500M 500M C:\Android\sd500m.img
既存のAVDをリストするコマンドは次のとおりです。
C:\android sdk directory\tools>android list avd
これによって、次のようなリストが生成されます。
Name: Android_2.2_1 Path: C:\Users\username\.android\avd\Android_2.2_1.avd Target: Android 2.2 (API level 8) Skin: WVGA800 Sdcard: 200M ------------ Name: Android_2.3.1 Path: C:\Users\username\.android\avd\Android_2.3.1.avd Target: Android 2.3.1 (API level 9) Skin: WVGA800 ------------ Name: Android_2.3.3 Path: C:\Users\username\.android\avd\Android_2.3.3.avd Target: Android 2.3.3 (API level 10) Skin: WVGA800 ------------ Name: Android_3.0 Path: C:\Users\username\.android\avd\Android_3.0.avd Target: Android 3.0 (API level 11) Skin: WXGA
作成したSDカードによってAndroid_2.2_1を起動するコマンドは次のとおりです。
C:\Android\android sdk directory\tools>emulator -avd Android_2.2_1 -sdcard C:\Android\sd500m.img
実行中のAndroidエミュレータ・インスタンスをリストするコマンドは次のとおりです。
C:\Android\android sdk directory\platform-tools>adb devices
テスト・イメージをSDカードにコピーするコマンドは次のとおりです(この場合、エミュレータを再起動する必要があります)。
C:\Android\sdk\platform-tools>adb push test.png sdcard/Pictures 85 KB/s (1494 bytes in 0.017s)
Androidエミュレータからは、10.0.2.2 IPを経由して、ホスト・コンピュータにアクセスできます。ホスト・コンピュータからエミュレータに接続するには、開発用コンピュータのコマンドラインまたはスクリプトからadb
コマンドを実行して、ポート・フォワーディングを設定する必要があります。
ソケット接続を転送するには、次のコマンドを実行します。
adb forward
local
remote
この際、次の転送仕様を使用します。
tcp:
port
localabstract:
unix domain socket name
localreserved:
unix domain socket name
localfilesystem:
unix domain socket name
dev:
character device name
jdwp:
process pid
(リモートのみ)
たとえば、任意のクライアントが次のように、ポート55000のエミュレータで実行されているサーバーへの接続をリクエストできます。
adb -e forward tcp:8555 tcp:55000
この例では、ホスト・コンピュータから、クライアントはlocalhost:8555
に接続し、そのソケットを介して通信を行います。
詳細は、Android開発者のWebサイト(http://developer.android.com/tools/help/adb.html
)の「Android Debug Bridge」を参照してください。
開発用コンピュータが企業のファイアウォールで保護されている場合は、次のコマンドを実行してエミュレータを起動し、ブラウザとの接続を開始する必要がある可能性があります。
emulator -avd myavd -http-proxy myproxy
次のように、環境設定をテストできます。
JDeveloperで、HelloWorldサンプル・アプリケーションを開きます。詳細は、第2.7項「サンプル・アプリケーション」および付録F「サンプルのADFモバイル・アプリケーション」を参照してください。
メイン・メニューから「アプリケーション」→「デプロイ」を選択します。
ドロップダウン・メニューから、アプリケーションのデプロイ先となるプラットフォームに対応したデプロイメント・プロファイルを選択します。
環境設定をテストする場合、アプリケーションの署名を必要としないiOSデバイス・シミュレータまたはAndroidデバイス・エミュレータでのテストが推奨されるため、「デプロイ」ダイアログを使用して、次のいずれかのデプロイメント・アクションを選択する必要があります。
「デプロイ」ダイアログで「次へ」をクリックし、「サマリー」ページの内容を確認した後、「終了」をクリックします。
デプロイメントの詳細は、第17章「ADFモバイル・アプリケーションのデプロイ」を参照してください。