ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Mobile Application Frameworkでのモバイル・アプリケーションの開発
2.0
E56274-01
次
目次
タイトルおよび著作権情報
はじめに
対象読者
ドキュメントのアクセシビリティについて
関連ドキュメント
表記規則
第I部 モバイル・アプリケーション・フレームワークの理解
1
Oracle Mobile Application Frameworkの概要
1.1
モバイル・アプリケーション・フレームワークの概要
1.2
モバイル・アプリケーション・フレームワーク・ランタイム・アーキテクチャについて
1.3
Oracle Mobile Application Frameworkを使用したアプリケーションの開発について
1.3.1
接続アプリケーションおよび切断されたアプリケーションについて
1.4
サンプル・アプリケーション
第II部 スタート・ガイド
2
開発環境の設定
2.1
MAF環境の概要
2.2
MAFアプリケーション開発の前提条件
2.2.1
iOSプラットフォーム用アプリケーションを開発するための必要事項
2.2.2
Androidプラットフォーム用アプリケーションを開発するための必要事項
2.2.3
サポートされているIDEに関する必知事項
2.2.4
プラグインの移行に関する必知事項
2.3
JDeveloperの設定
2.3.1
プラットフォームとフォーム・ファクタに応じた開発環境の構成方法
2.3.1.1
フォーム・ファクタに応じた環境の構成
2.3.1.2
ターゲット・プラットフォームに応じた環境の構成
2.4
iOSプラットフォーム用の開発ツールの設定
2.4.1
Xcodeのインストール方法
2.4.2
iOS SDKのインストール方法
2.4.3
iPhoneまたはiPadの設定方法
2.4.4
iPhoneまたはiPadシミュレータの設定方法
2.5
Androidプラットフォーム用の開発ツールの設定
2.5.1
Android SDKのインストール方法
2.5.2
Androidデバイスの設定方法
2.5.3
Androidエミュレータの設定方法
2.5.3.1
Androidエミュレータの構成
2.5.3.2
Androidエミュレータの高速化
2.6
環境設定のテスト
3
モバイル・アプリケーション開発のスタート・ガイド
3.1
MAFアプリケーションの宣言的な開発の概要
3.2
アプリケーション・ワークスペースの作成
3.2.1
モバイル・アプリケーション用のワークスペースの作成方法
3.2.2
MAFアプリケーションの作成時に行われる処理
3.2.2.1
アプリケーション・コントローラ・プロジェクト・レベルのリソースについて
3.2.2.2
sync-config.xmlファイルに関する必知事項
3.2.2.3
ビュー・コントローラ・プロジェクトのリソースについて
3.2.2.4
自動的に生成されるデプロイメント・プロファイルについて
3.2.3
MAFアプリケーションとアプリケーション機能の編集に関する必知事項
3.2.4
MAF AMXアプリケーション用のアプリケーション・ワークスペースの作成
3.2.4.1
MAF AMXページの作成方法
3.2.4.2
MAFタスク・フローの作成方法
3.2.4.3
MAF AMXページおよびタスク・フローの作成時に行われる処理
3.3
ADFモバイル・アプリケーションの移行
3.3.1
ADFモバイル・アプリケーションの移行時に行われる処理
3.3.1.1
Webサービス・ポリシー定義の移行について
3.3.2
移行済アプリケーションにおけるFARに関する必知事項
3.3.3
ヘッドレス・モードでのアプリケーションの移行
第III部 MAFアプリケーションの開発
4
モバイル・アプリケーションの定義
4.1
モバイル・アプリケーションの定義の概要
4.1.1
maf-application.xmlの概要エディタの使用方法
4.2
モバイル・アプリケーションの構成ファイルについて
4.3
モバイル・アプリケーションの基本情報の設定
4.3.1
モバイル・アプリケーションのIDおよび表示動作の設定方法
4.4
カスタムURLスキームを使用したモバイル・アプリケーションの起動
4.5
Springboardとナビゲーション・バーの動作の構成
4.5.1
アプリケーションのナビゲーションの構成方法
4.5.2
ナビゲーション・オプションの構成時の処理
4.5.3
Springboardにアニメーションを設定する場合の処理
4.5.4
HTMLコンテンツによるカスタムSpringboardアプリケーション機能に関する必知事項
4.5.5
MAF AMXコンテンツによるカスタムSpringboardアプリケーション機能に関する必知事項
4.5.6
Springboardの実行時動作に関する必知事項
4.6
モバイル・アプリケーション内のアプリケーション機能の構成
4.6.1
モバイル・アプリケーションのコンテンツの指定方法
4.6.2
機能参照IDと機能IDに関する必知事項
4.7
ライフサイクル・イベント・リスナーについて
4.7.1
モバイル・アプリケーションのイベント
4.7.2
モバイル・アプリケーション・イベントのタイミング
4.7.3
アクティブ化および非アクティブ化メソッドを使用したアプリケーションの状態の保存
4.7.4
アプリケーション機能ライフサイクル・リスナー・クラスについて
4.7.5
アプリケーション機能ライフサイクルでイベントをアクティブ化および非アクティブ化するタイミング
4.7.6
スライディング・ウィンドウの有効化
4.8
モバイル・アプリケーション機能の構成ファイルについて
4.9
アプリケーション機能の基本構成の設定
4.9.1
アプリケーション機能の基本情報の定義方法
4.10
アプリケーション機能のコンテンツ・タイプの定義
4.10.1
アプリケーション・コンテンツの定義方法
4.10.2
外部リソースの選択に関する必知事項
4.11
ローカライズ済コンテンツの操作
4.11.1
リソース・バンドルの使用
4.11.1.1
リソース・バンドル・オプションの設定方法
4.11.1.2
リソース・バンドル・オプションの選択時に行われる処理
4.11.1.3
リソース・バンドルへの文字列の入力方法
4.11.1.4
リソース・バンドル追加時の処理
4.11.1.5
MAF AMXコンポーネントの文字列のローカライズ方法
4.11.1.6
MAF AMXコンポーネントのプロジェクト・レベルのリソース・バンドルの作成時に行われる処理
4.11.1.7
イメージ・ファイルのローカライズに関する必知事項
4.11.1.8
リソース・バンドル・ファイルの編集方法
4.11.1.9
iOSアプリケーションのXLIFFファイルに関する必知事項
4.11.1.10
iOSアプリケーションの国際化
4.12
モバイル・アプリケーションのスキニング
4.12.1
maf-config.xmlファイルについて
4.12.2
MAFスタイルに関する必知事項
4.12.3
maf-skins.xmlファイルについて
4.12.4
アプリケーションへのカスタム・スキンの追加方法
4.12.5
アプリケーションが使用するスキンの指定方法
4.12.6
カスタム・スキンの登録方法
4.12.7
MAFスキンのバージョニング方法
4.12.8
スキンのバージョニング時に行われる処理
4.12.9
デフォルト・スキン・スタイルのオーバーライド
4.12.9.1
アプリケーション機能に新しいスタイル・クラスを適用する方法
4.12.9.2
スキンのアプリケーション機能への適用時に行われる処理
4.12.10
スキニングに関する必知事項
4.12.11
スキニング・スタイルの移行に関する必知事項
4.12.12
実行時での動的スキン選択の有効化
4.12.12.1
エンド・ユーザーが実行時にアプリケーションのスキンを変更できるようにする方法
4.12.12.2
実行時に行われる処理: エンド・ユーザーによるアプリケーションのスキンの変更方法
4.13
機能アーカイブ・ファイルの使用
4.13.1
MAFアプリケーションでのFARコンテンツの使用方法
4.13.2
FARのライブラリとしての追加時に行われる処理
4.13.3
FARのビュー・コントローラ・プロジェクトとしての追加時に行われる処理
4.13.4
機能アーカイブ・リソースの再使用の有効化に関する必知事項
4.13.5
FARを使用したsync-config.xmlファイルの更新に関する必知事項
4.14
Oracle Metadata Servicesを使用したMAFファイルのカスタマイズ
4.14.1
カスタマイズ・レイヤーの作成方法
4.14.2
カスタマイズ・クラスの作成方法
4.14.3
カスタマイズ・クラスにアクセスするためのデザインタイムの有効化方法
4.14.4
Webサービス・データ・コントロールとカスタマイズしたアプリケーションのデプロイメントに関する必知事項
4.14.5
モバイル・アプリケーションのカスタマイズ時に行われる処理
4.14.6
モバイル・アプリケーションのリソース・バンドルでのカスタマイズの有効化
4.14.6.1
リソース・バンドルでカスタマイズを有効化する方法
4.14.7
カスタマイズを使用したモバイル・アプリケーションのアップグレード
4.14.7.1
モバイル・アプリケーションのアップグレード方法
4.14.8
アプリケーションをアップグレードする場合のJDeveloperでの処理
4.14.9
FARのアップグレードに関する必知事項
4.15
モバイル・アプリケーションへのCordovaプラグインの統合
4.15.1
iOSおよびAndroidのCordovaプラグインの統合方法
4.15.2
プラグインの更新時に行われる処理
4.15.3
プラグイン・プリファレンスの追加方法
4.15.4
FARを使用したプラグインの統合に関する必知事項
第IV部 MAF AMXアプリケーション機能の作成
5
MAF AMXページの作成
5.1
MAF AMXアプリケーション機能の概要
5.2
タスク・フローの作成
5.2.1
タスク・フローの作成方法
5.2.2
タスク・フロー・アクティビティと制御フローに関する必知事項
5.2.3
ViewController-task-flow.xmlファイルに関する必知事項
5.2.4
MAFタスク・フロー・ダイアグラマに関する必知事項
5.2.5
タスク・フロー・アクティビティの追加方法と使用方法
5.2.5.1
ビュー・アクティビティの追加
5.2.5.2
ルーター・アクティビティの追加
5.2.5.3
メソッド・コール・アクティビティの追加
5.2.5.4
タスク・フロー・コール・アクティビティの追加
5.2.5.5
タスク・フロー・リターン・アクティビティの追加
5.2.5.6
ページ定義ファイルのあるタスク・フロー・アクティビティの使用
5.2.6
制御フローの定義方法
5.2.6.1
制御フロー・ケースの定義
5.2.6.2
ワイルドカード制御フロー・ルールの追加
5.2.6.3
制御フロー・ルールのメタデータに関する必知事項
5.2.6.4
制御フロー・ルールの評価に関する必知事項
5.2.7
MAFの戻るナビゲーションのサポートに関する必知事項
5.2.8
ドラッグによりページ・ナビゲーションを有効にする方法
5.2.9
UIコンポーネントを使用したアクション結果の指定方法
5.2.10
マネージドBeanの作成および参照方法
5.2.11
ページ遷移スタイルの指定方法
5.2.12
バインド・タスク・フローおよびバインドなしタスク・フローに関する必知事項
5.2.12.1
バインドなしタスク・フロー
5.2.12.2
バインド・タスク・フロー
5.2.12.3
タスク・フローのパラメータの使用
5.3
ビューの作成
5.3.1
MAF AMXページの使用方法
5.3.1.1
MAF AMXページ構造の解釈
5.3.1.2
MAF AMXページの作成
5.3.1.3
MAF AMXページの作成時に行われる処理
5.3.1.4
UIエディタの使用方法
5.3.1.5
ページ定義ファイルへのアクセス
5.3.1.6
ページ・コンテンツの共有
5.3.2
MAF AMXページへのUIコンポーネントおよびデータ・コントロールの追加方法
5.3.2.1
UIコンポーネントの追加
5.3.2.2
「プレビュー」の使用方法
5.3.2.3
UIコンポーネントの構成
5.3.2.4
データ・コントロールのビューへの追加
5.3.2.5
要素識別子とその監査に関する必知事項
5.3.3
サーバー通信に関する必知事項
6
MAF AMXユーザー・インタフェースの作成
6.1
MAF AMXページのユーザー・インタフェースの作成の概要
6.2
ページ・レイアウトの設計
6.2.1
表示コンポーネントの使用方法
6.2.2
パネル・ページ・コンポーネントの使用方法
6.2.3
パネル・グループ・レイアウト・コンポーネントの使用方法
6.2.3.1
スクロール動作のカスタマイズ
6.2.4
パネル・フォーム・レイアウト・コンポーネントの使用方法
6.2.5
パネル・ストレッチ・レイアウト・コンポーネントの使用方法
6.2.6
パネル・ラベルおよびメッセージ・コンポーネントの使用方法
6.2.7
ファセット・コンポーネントの使用方法
6.2.8
ポップアップ・コンポーネントの使用方法
6.2.9
パネル・スプリッタ・コンポーネントの使用方法
6.2.10
スペーサ・コンポーネントの使用方法
6.2.11
表のレイアウト・コンポーネントの使用方法
6.2.12
デッキ・コンポーネントの使用方法
6.2.13
フラグメント・コンポーネントの使用方法
6.3
UIコンポーネントの作成と使用方法
6.3.1
入力テキスト・コンポーネントの使用方法
6.3.1.1
入力テキスト・コンポーネントのカスタマイズ
6.3.2
入力数値スライダ・コンポーネントの使用方法
6.3.3
入力日コンポーネントの使用方法
6.3.4
出力テキスト・コンポーネントの使用方法
6.3.5
ボタンの使用方法
6.3.5.1
デフォルト・スタイル・ボタンの表示
6.3.5.2
戻るスタイル・ボタンの表示
6.3.5.3
強調表示スタイル・ボタンの表示
6.3.5.4
アラート・スタイル・ボタンの表示
6.3.5.5
追加のボタン・スタイルの使用方法
6.3.5.6
アプリケーション内でのボタンの使用方法
6.3.5.7
戻るボタン・ナビゲーションの有効化
6.3.5.8
操作と属性の処理順序に関する必知事項
6.3.6
リンクの使用方法
6.3.7
イメージの表示方法
6.3.8
チェックボックス・コンポーネントの使用方法
6.3.8.1
iOSプラットフォームでのチェックボックス・コンポーネントのサポート
6.3.8.2
Androidプラットフォームでのチェックボックス・コンポーネントのサポート
6.3.9
チェックボックスを複数選択コンポーネントの使用方法
6.3.9.1
チェックボックスを複数選択コンポーネントとユーザーとの対話に関する必知事項
6.3.10
選択肢コンポーネントの使用方法
6.3.10.1
iOSプラットフォームでの選択肢コンポーネントとユーザーとの対話に関する必知事項
6.3.10.2
Androidプラットフォームでの選択肢コンポーネントとユーザーとの対話に関する必知事項
6.3.10.3
アイテムの選択コンポーネントの違いに関する必知事項
6.3.11
選択肢を複数選択コンポーネントの使用方法
6.3.12
ブール・スイッチ・コンポーネントの使用方法
6.3.12.1
iOSプラットフォームでのブール・スイッチ・コンポーネントのサポートに関する必知事項
6.3.12.2
Androidプラットフォームでのブール・スイッチ・コンポーネントのサポートに関する必知事項
6.3.13
選択ボタン・コンポーネントの使用方法
6.3.14
ラジオ・ボタン・コンポーネントの使用方法
6.3.15
リスト・ビューおよびリスト・アイテム・コンポーネントの使用方法
6.3.15.1
ページングおよび動的スクロールの構成
6.3.15.2
リスト・ビュー・アイテムの再配置
6.3.15.3
スタイルを使用したレイアウトの構成
6.3.15.4
静的リスト・ビューの使用方法に関する必知事項
6.3.16
カルーセル・コンポーネントの使用方法
6.3.17
フィルム・ストリップ・コンポーネントの使用方法
6.3.17.1
フィルム・ストリップ・レイアウトに関する必知事項
6.3.17.2
フィルム・ストリップ・ナビゲーションに関する必知事項
6.3.18
Verbatimコンポーネントの使用方法
6.3.18.1
JavaScriptおよびAJAXをVerbatimコンポーネントとともに使用する方法に関する必知事項
6.3.19
出力HTMLコンポーネントの使用方法
6.3.20
反復の有効化方法
6.3.21
リソース・バンドルのロード方法
6.3.22
アクション・リスナーの使用方法
6.3.22.1
アクション・リスナー・コンポーネントと属性間の違いに関する必知事項
6.3.23
プロパティ・リスナーの設定の使用方法
6.3.24
日時の変換方法
6.3.24.1
日時パターンに関する必知事項
6.3.25
数値の変換方法
6.3.26
ドラッグ・ナビゲーションを有効にする方法
6.3.26.1
disabled属性に関する必知事項
6.3.27
ロード・インジケータの使用方法
6.4
ジェスチャーの有効化
6.5
データ視覚化の指定
6.5.1
面グラフの作成方法
6.5.2
棒グラフの作成方法
6.5.3
横棒グラフの作成方法
6.5.4
バブル・チャートの作成方法
6.5.5
コンボ・チャートの作成方法
6.5.6
線グラフの作成方法
6.5.7
円グラフの作成方法
6.5.8
散布図の作成方法
6.5.9
スパーク・チャートの作成方法
6.5.10
ファンネル・チャートの作成方法
6.5.11
チャート・コンポーネントのスタイル設定方法
6.5.12
チャート・コンポーネントでのイベントの使用方法
6.5.13
LEDゲージの作成方法
6.5.14
ステータス・メーター・ゲージの作成方法
6.5.15
ダイアル・ゲージの作成方法
6.5.16
評価ゲージの作成方法
6.5.16.1
評価ゲージ・コンポーネントへのカスタム・スタイルの適用
6.5.17
チャートおよびゲージ・コンポーネントの子要素の定義方法
6.5.17.1
チャートのデータ・アイテムの定義
6.5.17.2
凡例の定義
6.5.17.3
X軸、Y軸およびY2軸の定義
6.5.17.4
円グラフのデータ・アイテムの定義
6.5.17.5
スパーク・チャートのデータ・アイテムの定義
6.5.17.6
ファンネル・データ・アイテムの定義
6.5.17.7
しきい値の定義
6.5.18
地理マップ・コンポーネントの作成方法
6.5.18.1
地理プロバイダ情報を指定した地理マップ・コンポーネントの構成
6.5.19
テーマ・マップ・コンポーネントの作成方法
6.5.19.1
カスタム・マーカーの定義
6.5.19.2
分離領域レイヤーの定義
6.5.19.3
分離領域の定義
6.5.19.4
初期ズームの有効化
6.5.19.5
カスタム・ベース・マップの定義
6.5.19.6
イベント・リスナーのマーカー・サポートに関する必知事項
6.5.19.7
テーマ・マップ・コンポーネントへのカスタム・スタイルの適用
6.5.20
マップ・コンポーネントでのイベントの使用方法
6.5.21
ツリーマップ・コンポーネントの作成方法
6.5.21.1
ツリーマップ・コンポーネントへのカスタム・スタイルの適用
6.5.22
サンバースト・コンポーネントの作成方法
6.5.22.1
サンバースト・コンポーネントへのカスタム・スタイルの適用
6.5.23
時系列コンポーネントの作成方法
6.5.23.1
時系列コンポーネントへのカスタム・スタイルの適用
6.5.24
NBoxコンポーネントの作成方法
6.5.25
マップ・コンポーネント、サンバースト、ツリーマップ、時系列およびNBoxの子要素の定義方法
6.5.26
データバインドされたデータ視覚化コンポーネントの作成方法
6.5.26.1
データバインドされたチャート・コンポーネントの系列スタイルの設定に関する必知事項
6.6
UIコンポーネントのスタイル設定
6.6.1
コンポーネント属性を使用したスタイルの定義方法
6.6.2
スキニングに関する必知事項
6.6.3
データ視覚化コンポーネントのスタイル設定方法
6.7
UIコンポーネントのローカライズ
6.8
MAFのアクセシビリティのサポートの理解
6.8.1
アクセシビリティのためのUIおよびデータ視覚化コンポーネントの構成方法
6.8.2
基本的なWAI-ARIA用語に関する必知事項
6.8.3
Oracle Global HTML Accessibility Guidelinesに関する必知事項
6.9
入力の検証
6.10
イベント・リスナーの使用方法
6.10.1
イベント・リスナーの制約付きタイプ属性に関する必知事項
7
バインディングの使用とデータ・コントロールの作成
7.1
バインディングおよびデータ・コントロールの概要
7.2
オブジェクト・スコープ・ライフサイクルについて
7.2.1
オブジェクト・スコープとタスク・フローに関する必知事項
7.3
EL式の作成
7.3.1
データ・バインディングEL式について
7.3.2
EL式の作成方法
7.3.2.1
メソッド式ビルダーについて
7.3.2.2
非ELプロパティについて
7.3.3
MAFバインディング・プロパティに関する必知事項
7.3.4
バインディング・コンテナを参照する方法
7.3.5
式ビルダーのカテゴリについて
7.3.5.1
バインディング・カテゴリについて
7.3.5.2
マネージドBeanカテゴリについて
7.3.5.3
モバイル・アプリケーション・フレームワーク・オブジェクト・カテゴリについて
7.3.6
ELイベントについて
7.3.7
EL式のマネージドBean内での使用方法
7.4
マネージドBeanの作成と使用
7.4.1
JDeveloperでのマネージドBeanの作成方法
7.4.2
JDeveloperを使用してマネージドBeanを作成する場合の処理
7.5
データ・コントロールを使用したビジネス・サービスの公開
7.5.1
データ・コントロールの作成方法
7.5.2
データ・コントロール作成時のプロジェクト内の処理
7.5.2.1
DataControls.dcx概要エディタ
7.5.2.2
「データ・コントロール」パネル
7.5.3
データ・コントロールの組込み操作
7.6
「データ・コントロール」パネルでのデータバインドされたUIコンポーネントの作成
7.6.1
「データ・コントロール」パネルの使用方法
7.6.2
「データ・コントロール」パネルの使用時の処理
7.7
実行時に行われる処理: バインディング・コンテキストの動作方法
7.8
データ・コントロールの構成
7.8.1
データ・コントロールの編集方法
7.8.2
データ・コントロール編集時の処理
7.8.3
データ・コントロールのMDSカスタマイズに関する必知事項
7.9
属性の使用
7.9.1
属性を主キーとして指定する方法
7.9.2
属性の静的なデフォルト値を定義する方法
7.9.3
属性へのUIヒントの設定方法
7.9.4
属性へのUIヒントの設定時の処理
7.9.5
EL式を使用してUIヒントにアクセスする方法
7.10
Beanデータ・コントロールの作成および使用
7.10.1
Beanクラス変数のシリアライズに関する必知事項
7.11
DeviceFeaturesデータ・コントロールの使用方法
7.11.1
getPictureメソッドを使用して写真撮影を可能にする方法
7.11.2
SendSMSメソッドを使用してテキスト・メッセージングを可能にする方法
7.11.3
sendEmailメソッドを使用して電子メールを可能にする方法
7.11.4
createContactメソッドを使用してコンタクト先の作成を可能にする方法
7.11.5
findContactsメソッドを使用してコンタクト先の検索を可能にする方法
7.11.6
updateContactメソッドを使用してコンタクト先の更新を可能にする方法
7.11.7
removeContactメソッドを使用してコンタクト先の削除を可能にする方法
7.11.8
startLocationMonitorメソッドを使用して地理的位置を有効にする方法
7.11.9
displayFileメソッドを使用してファイルの表示を可能にする方法
7.11.10
デバイス・プロパティ
7.12
属性の検証
7.12.1
検証ルールの追加方法
7.12.2
バリデータのメタデータに関する必知事項
7.13
データ変更イベントについて
8
Webサービスの使用方法
8.1
MAFアプリケーションでのWebサービスの使用方法の概要
8.2
Webサービス・データ・コントロールの作成
8.2.1
SOAPを使用したWebサービス・データ・コントロールの作成方法
8.2.2
Webサービス・データ・コントロールに関する必知事項
8.2.3
Webサービス・データ・コントロールでSOAPヘッダーをカスタマイズする方法
8.2.4
RESTを使用したWebサービス・データ・コントロールの作成方法
8.3
新しいWebサービス接続の作成
8.4
Webサービス・データ・コントロールのエンドポイントの調整
8.5
セキュアなWebサービスへのアクセス
8.5.1
SOAPベースのWebサービスへのアクセスを有効にする方法
8.5.2
RESTベースのWebサービスへのアクセスを有効にする方法
8.5.3
資格証明の挿入に関する必知事項
8.5.4
セキュアなWSDLファイルの使用制限
8.6
JavaからのWebサービスの起動
8.6.1
Webサービス・オブジェクトの行を追加および削除する方法
8.6.2
REST Webサービス・アダプタの使用方法
8.6.2.1
入力および出力ストリームへのアクセス
8.6.2.2
非テキスト・レスポンスのサポート
8.6.3
RESTレスポンスの厳密な検証を有効にする方法
8.6.4
データ・コントロール操作の起動に関する必知事項
8.7
ブラウザ・プロキシ情報の構成
9
MAFアプリケーションで使用されるエンド・ポイントの構成
9.1
エンド・ポイントの構成の概要
9.2
構成サービスのエンド・ポイントの定義
9.3
構成サービスのユーザー・インタフェースの作成
9.4
URLの構築について
9.5
サーバー上での構成サービスの設定
9.6
構成サービスAPIの移行
10
ローカル・データベースの使用方法
10.1
ローカルSQLiteデータベースの使用方法の概要
10.1.1
SQLiteと他のリレーショナル・データベースとの相違点
10.1.1.1
同時実行性
10.1.1.2
SQLのサポートおよび解釈
10.1.1.3
データ型
10.1.1.4
外部キー
10.1.1.5
データベース・トランザクション
10.1.1.6
認証
10.2
ローカルSQLiteデータベースの使用方法
10.2.1
データベースへの接続方法
10.2.2
SQLスクリプトを使用してデータベースを初期化する方法
10.2.3
デスクトップ上でデータベースを初期化する方法
10.2.4
コミット処理に関する必知事項
10.2.5
MAFでのSQLite JDBCドライバの制限
10.2.6
VACUUMコマンドの使用方法
10.2.7
データベースを暗号化および復号化する方法
10.2.8
StockTrackerサンプル・アプリケーションに関する必知事項
11
MAF AMXアプリケーション機能アーティファクトのカスタマイズ
11.1
MAF AMXページおよびアーティファクトのカスタマイズの概要
11.2
MAF AMXページおよびアーティファクトのカスタマイズ
11.3
カスタマイズ・クラスに関する必知事項
11.3.1
静的なカスタマイズ・コンテンツに関する必知事項
11.4
カスタマイズ・レイヤーの構成
11.4.1
レイヤー値をグローバルに構成する方法
11.4.2
ワークスペースレベルのレイヤー値の構成方法
11.4.2.1
Studio開発者ロールの使用方法
11.4.2.2
「カスタマイズ開発者」ロールの使用方法
11.5
カスタマイズ・クラスの使用
11.5.1
デザインタイムにJDeveloperでカスタマイズ・クラスを使用可能にする方法
11.6
adf-config.xmlファイルの構成方法
11.7
「カスタマイズ開発者」ロールに関する必知事項
11.7.1
JDeveloperでの「カスタマイズ開発者」ロールへの切替え
11.7.2
ヒント・レイヤーに関する必知事項
12
カスタムMAF AMX UIコンポーネントの作成
12.1
カスタムUIコンポーネントの作成の概要
12.2
MAF APIを使用したカスタム・コンポーネントの作成
12.2.1
静的APIの使用方法
12.2.2
AmxEventクラスの使用方法
12.2.3
TypeHandlerの使用方法
12.2.4
AmxNodeの使用方法
12.2.5
AmxTagの使用方法
12.2.6
VisitContextの使用方法
12.2.7
AmxAttributeChangeの使用方法
12.2.8
AmxDescendentChangesの使用方法
12.2.9
AmxCollectionChangeの使用方法
12.2.10
AmxNodeChangeResultの使用方法
12.2.11
AmxNodeStatesの使用方法
12.2.12
AmxNodeUpdateArgumentsの使用方法
12.3
カスタム・コンポーネントの作成
第V部 高度なトピック
13
リモートURLを使用したアプリケーション機能コンテンツの実装
13.1
リモートURLアプリケーションの概要
13.1.1
ホワイトリストを使用したリモート・アプリケーションによるデバイス・サービスへのアクセスの有効化
13.1.2
リモートURL実装によるApache Cordovaへのアクセスの有効化
13.1.3
ホワイトリストされたドメインによるデバイス機能へのアクセス方法
13.1.4
ホワイトリストを作成(またはドメインを制限)する方法
13.1.5
ホワイトリストにドメインを追加する場合の処理
13.1.6
リモートURLに関する必知事項
13.2
アプリケーション・コンポーネントのホワイトリストの作成
13.3
リモートURLページでのブラウザ・ナビゲーション・バーの有効化
13.3.1
リモートURLアプリケーション機能へのナビゲーション・バーの追加方法
13.3.2
リモートURLアプリケーション機能のブラウザ・ナビゲーション・ボタンを有効にする場合の処理
13.4
リモート・コンテンツの作成について
14
ユーザー・プリファレンスの有効化
14.1
モバイル・アプリケーションのユーザー・プリファレンス・ページの作成
14.1.1
モバイル・アプリケーションレベルのプリファレンス・ページの作成方法
14.1.1.1
新しいユーザー・プリファレンス・ページの作成方法
14.1.1.2
プリファレンス・ページを追加する場合の処理
14.1.1.3
ユーザー・プリファレンス・リストの作成方法
14.1.1.4
プリファレンス・リストを作成する場合の処理
14.1.1.5
ブール型のプリファレンス・リストの作成方法
14.1.1.6
ブール型のプリファレンスを追加する場合の処理
14.1.1.7
テキストのプリファレンスの追加方法
14.1.1.8
テキストのプリファレンスを定義する場合の処理
14.1.2
アプリケーションレベルのプリファレンス・ページを作成する場合の処理
14.2
アプリケーション機能のユーザー・プリファレンス・ページの作成
14.3
ユーザー・プリファレンス・ページ用に格納された値を取得するEL式の使用方法
14.3.1
preferenceScopeに関する必知事項
14.3.2
iOSネイティブ・ビューでのプリファレンス値の読取り
14.4
プラットフォームによる表示の差異
15
アプリケーション機能に関する制約の設定
15.1
制約の概要
15.1.1
制約を使用したアプリケーション機能の表示または非表示
15.1.2
制約を使用した特定のコンテンツ・タイプの配信
15.2
アプリケーション機能の制約の定義
15.2.1
アプリケーション機能に制約を定義する方法
15.2.2
制約を定義する場合の処理
15.2.3
property属性について
15.2.4
ユーザー制約とアクセス制御について
15.2.5
ハードウェア関連の制約について
15.2.6
アプリケーション機能およびコンテンツに関する動的制約の作成
15.2.6.1
静的制約とEL定義制約の結合について
15.2.6.2
動的コンテンツの定義方法
16
Oracle Cloud上のデータへのアクセス
16.1
Oracle Cloudでホストされるデータへのモバイル・アプリケーションによるアクセスの有効化
16.1.1
Oracle Cloudの認証方法
16.1.2
Oracle Java CloudにアクセスするためのWebサービス・データ・コントロールの作成方法
16.1.2.1
SOAPベースのWebサービスにおけるポリシーの構成
16.1.3
Oracle Java Cloud Serviceにアクセスするモバイル・アプリケーションのデプロイ時に行われる処理
17
プッシュ通知の有効化
17.1
プッシュ通知の概要
17.1.1
プッシュ通知の動作
17.1.2
アプリケーションの状態に応じたモバイル・アプリケーションによる通知の表示
17.2
モバイル・アプリケーションに対するプッシュ通知の有効化
17.3
プッシュ通知ペイロードについて
18
MAFアプリケーションでのエラーの処理
18.1
MAFのエラー処理について
18.2
エラー・メッセージの表示およびバックグラウンド・スレッドの停止
18.2.1
アプリケーションによるバックグラウンド・スレッド例外のエラー・メッセージの表示方法
18.3
エラー・メッセージのローカライズ
第VI部 モバイル・アプリケーションの完成
19
モバイル・アプリケーションのデプロイ
19.1
モバイル・アプリケーションのデプロイメントの概要
19.1.1
MAFデプロイメント・オプション
19.1.1.1
プロジェクト・ライブラリのデプロイメント
19.1.1.2
JVM 1.4ライブラリのデプロイメント
19.2
デプロイメント・プロファイルでの作業
19.2.1
デプロイメント・プロファイルの作成方法
19.2.2
デプロイメント・プロファイルの作成時の処理
19.2.3
Androidデプロイメント・プロファイルの作成方法
19.2.3.1
アプリケーションの詳細オプションの設定
19.2.3.2
デプロイメント・オプションの設定
19.2.3.3
Android署名オプションの定義
19.2.3.4
資格証明の格納に関する必知事項
19.2.3.5
Androidアプリケーションへのカスタム・イメージの追加方法
19.2.3.6
JDeveloperによってAndroidアプリケーション用のイメージがデプロイされる場合の処理
19.2.4
iOSデプロイメント・プロファイルの作成方法
19.2.4.1
iOSビルド・オプションの定義
19.2.4.2
デバイス署名オプションの設定
19.2.4.3
iOSアプリケーションへのカスタム・イメージの追加
19.2.4.4
iTunesアートワークに関する必知事項
19.2.4.5
表示をデバイスの特定の向きに制限する方法
19.2.4.6
デバイスの向きを選択解除する場合の処理
19.3
Androidアプリケーションのデプロイ
19.3.1
AndroidエミュレータへのAndroidアプリケーションのデプロイ方法
19.3.2
Androidデバイスへのアプリケーションのデプロイ方法
19.3.3
Androidアプリケーションの公開方法
19.3.4
.apkファイル作成時のJDeveloperでの処理
19.3.5
最近使用されたデプロイメント・プロファイルの選択
19.3.6
Androidデバッグ・ブリッジの使用方法に関する必知事項
19.4
iOSアプリケーションのデプロイ
19.4.1
iOSシミュレータへのiOSアプリケーションのデプロイ方法
19.4.2
iOSデバイスへのアプリケーションのデプロイ方法
19.4.3
iOSデバイスにアプリケーションをデプロイする場合の処理
19.4.4
iOSデバイスへのアプリケーションのデプロイに関する必知事項
19.4.4.1
iOS開発用証明書の作成
19.4.4.2
テストおよびデバッグ用のAppleデバイスの登録
19.4.4.3
アプリケーションIDの登録
19.4.5
App StoreへのiOSアプリケーションの配布方法
19.5
機能アーカイブ・ファイル(FAR)のデプロイ
19.5.1
機能アーカイブのデプロイメント・プロファイルの作成方法
19.5.2
機能アーカイブのデプロイメント・プロファイルのデプロイ方法
19.5.3
機能アーカイブ・ファイルのデプロイメント・プロファイルをデプロイする場合の処理
19.6
モバイル・アプリケーション・アーカイブ・ファイルの作成
19.6.1
モバイル・アプリケーション・アーカイブ・ファイルの作成方法
19.7
署名されていないデプロイメント・パッケージの作成
19.7.1
署名されていないアプリケーションの作成方法
19.7.2
MAFアプリケーション・アーカイブ・ファイルのインポート時に行われる処理
19.8
コマンド行からのモバイル・アプリケーションのデプロイ
19.8.1
OJDeployを使用したモバイル・アプリケーションのデプロイ
20
セキュリティに関するベスト・プラクティス
20.1
脆弱なサーバー側コントロール
20.2
デバイス上のセキュアでないデータ格納
20.2.1
SQLiteデータベースの暗号化
20.2.2
デバイスのローカル・データ・ストアの保護
20.2.3
セキュリティ・ログとアプリケーション・ログについて
20.3
トランスポート・レイヤーの不十分な保護
20.4
サイドチャネルによるデータの漏洩
20.5
脆弱な認可および認証
20.6
不適切な暗号化
20.7
クロスサイト・スクリプティングのクライアント側インジェクション
20.7.1
ホワイトリストによるXSSからのアプリケーションの保護
20.7.2
デバイス・アクセス権限を使用したインジェクション攻撃からのMAFアプリケーションの保護
20.7.3
カスタムHTMLコンポーネントからのインジェクション攻撃リスクについて
20.7.4
SQLインジェクションおよびXMLインジェクションについて
20.8
信頼できない入力のセキュリティ判断
20.9
不適切なセッション処理
20.10
バイナリ保護の欠如による機密情報の開示
21
モバイル・アプリケーションの保護
21.1
モバイル・アプリケーション・フレームワークのセキュリティについて
21.1.1
制約に基づくアクセス制御について
21.2
ユーザー・ログイン・プロセスについて
21.3
モバイル・アプリケーションの認証プロセスの概要
21.4
MAF接続の構成
21.4.1
MAFログイン接続の作成方法
21.4.2
Basic認証の構成方法
21.4.3
Oracle Mobile and Social Identity Managementを使用して認証を構成する方法
21.4.4
OAuth認証の構成方法
21.4.5
Web SSO認証の構成方法
21.4.6
MAFアプリケーション・ログイン用プレースホルダ接続の構成方法
21.4.7
実行時に名前付き接続の接続属性を更新する方法
21.4.8
ログイン資格証明の格納方法
21.4.9
ローカルおよびハイブリッド・ログイン接続の場合の複数のアイデンティティに関する必知事項
21.4.10
MAFアプリケーションおよび認証モードの移行に関する必知事項
21.4.11
REST Webサービス・コールへのCookieの挿入を可能にする場合の処理
21.4.12
CookieをREST Webサービス・コールに追加することに関する必知事項
21.4.13
実行時に行われる処理: MAFがREST Webサービスをコールした場合
21.4.14
基本認証ヘッダーの挿入に関する必知事項
21.4.15
Webサービス・セキュリティに関する必知事項
21.4.16
アクセス制御の構成方法
21.4.17
アクセス制御サービスに関する必知事項
21.4.18
アプリケーションのロード順序の変更方法
21.4.19
マルチテナント接続の定義時に行われる処理
21.4.20
モバイル・アプリケーションの接続の作成時に行われる処理
21.5
モバイル・アプリケーションのセキュリティの構成
21.5.1
認証を要求するようにアプリケーション機能を設定する方法
21.5.2
ログイン・ページの指定方法
21.5.3
ログイン・ページに関する必知事項
21.5.3.1
デフォルト・ログイン・ページ
21.5.3.2
カスタム・ログイン・ページ
21.5.3.3
カスタム・ログインHTMLページの作成
21.5.4
ログイン・ページ要素に関する必知事項
21.5.5
アプリケーション機能用セキュリティの構成時のJDeveloperでの処理
21.6
デバイス機能へのアクセスの許可
21.6.1
デバイス機能へのアクセスの有効化方法
21.6.2
デバイス機能の定義時に行われる処理
21.6.3
デバイス機能権限に関する必知事項
21.6.4
デプロイ時のデバイス機能に関する必知事項
21.7
アプリケーション機能からのユーザーのログアウトの有効化
21.8
SSLのサポート
22
MAFアプリケーションのテストおよびデバッグ
22.1
MAFアプリケーションのテストおよびデバッグの概要
22.2
MAFアプリケーションのテスト
22.2.1
iOSデバイス上でアクセシビリティのテストを実行する方法
22.3
MAFアプリケーションのデバッグ
22.3.1
デバッグ構成に関する必知事項
22.3.2
iOSプラットフォームでのデバッグ方法
22.3.3
Androidプラットフォームでのデバッグ方法
22.3.4
MAF AMXコンテンツのデバッグ方法
22.3.5
JavaコードおよびJavaScriptのデバッグを有効にする方法
22.3.5.1
iOS 6プラットフォーム上でのiOSデバイス・シミュレータを使用したJavaScriptのデバッグに関する必知事項
22.3.6
デバッグ・モードの構成方法
22.4
ロギングの使用方法と構成
22.4.1
プロパティ・ファイルを使用したロギングの構成方法
22.4.2
JavaScriptのロギングの使用方法
22.4.3
埋込みロギングの使用方法
22.4.4
iOSプラットフォームでのデバッグおよびロギングにXcodeを使用する方法
22.4.5
アプリケーション・ログへのアクセス方法
第VII部 付録
A
トラブルシューティング
A.1
iOSシミュレータでの入力コンポーネントの問題
A.2
コード署名が原因でデプロイメントが失敗する
A.3
credentials属性によりデプロイメントが失敗する
B
ローカルHTMLおよびアプリケーション・コンテナAPI
B.1
MAF APIを使用したカスタムHTML Springboardアプリケーション機能の作成
B.1.1
カスタムHTMLページ内のコードの実行について
B.2
MAFコンテナ・ユーティリティAPI
B.2.1
JavaScriptコールバックの使用方法
B.2.2
コンテナ・ユーティリティAPIの使用方法
B.2.3
getApplicationInformation
B.2.4
gotoDefaultFeature
B.2.5
getFeatures
B.2.6
gotoFeature
B.2.7
getFeatureByName
B.2.8
getFeatureById
B.2.9
resetFeature
B.2.10
gotoSpringboard
B.2.11
hideNavigationBar
B.2.12
showNavigationBar
B.2.13
invokeMethod
B.2.14
invokeContainerJavaScriptFunction
B.2.15
アプリケーション・アイコンへのバッジ設定
B.3
getDirectoryPathRootメソッドを使用したファイル・アクセス
B.3.1
プラットフォームに依存しないダウンロード場所へのアクセス
C
デプロイメントでのプリファレンスの変換
C.1
プリファレンスのネーミング・パターン
C.2
Android用のプリファレンスの変換
C.2.1
Preferences.xml
C.2.1.1
プリファレンス要素のマッピング
C.2.1.2
プリファレンス属性のマッピング
C.2.1.3
属性のデフォルト値
C.2.1.4
プリファレンス画面ルート要素
C.2.2
arrays.xml
C.2.3
Strings.xml
C.3
iOS用のプリファレンスの変換
D
MAFアプリケーションの使用方法
D.1
MAFアプリケーションの使用方法の概要
D.2
モバイル・デバイスへのMAFアプリケーションのインストール
D.2.1
iOSデバイスへのMAFアプリケーションのインストール方法
D.2.2
AndroidデバイスへのMAFアプリケーションのインストール方法
D.2.3
MAFアプリケーションのアンインストール方法
D.3
アプリケーション機能間の移動
D.3.1
iOSデバイスでのアプリケーション機能間の移動方法
D.3.1.1
Springboardを使用した移動
D.3.1.2
単一機能アプリケーションの使用
D.3.2
Androidデバイス上での移動方法
D.4
プリファレンスの設定
D.4.1
iOSデバイスでのプリファレンスの設定方法
D.4.2
Androidデバイスでのプリファレンスの設定方法
D.5
ログ・ファイルの表示
D.6
アプリケーションの使用方法の制限
D.6.1
リスト・ビュー・コンポーネントの制限
D.6.2
データ視覚化コンポーネントの制限
D.6.3
Androidプラットフォームでのデバイスの「戻る」ボタンの制限
D.6.4
アクセシビリティ・サポートの制限
E
XMLの解析
E.1
kXMLライブラリを使用したXMLの解析
F
サンプルのモバイル・アプリケーション・フレームワーク・アプリケーション
F.1
サンプルのMAFアプリケーションの概要