プライマリ・コンテンツに移動
Oracle® Mobile Application Framework Oracle Mobile Application Frameworkでのモバイル・アプリケーションの開発
2.2.1
E72509-01
目次へ移動
目次

前

E サンプルのMAFアプリケーション

この付録では、サンプルのMAFアプリケーションについて説明します。

この付録の内容は次のとおりです。

E.1 サンプルのMAFアプリケーションの概要

MAFは、基本的なアーティファクトの作成、デバイス・ネイティブな機能(SMSや電子メールなど)へのアクセス、ローカルのSQLiteデータベース上でのCRUD (作成/読取/更新/削除)操作の実行など、様々な開発シナリオを提供するサンプル・アプリケーションのセットとともに出荷されています。これらのアプリケーションは、開発コンピュータのJDeveloperインストール・ディレクトリ内の次の場所に存在するPublicSamples.zipファイルにあります。

jdev_install/jdeveloper/jdev/extensions/oracle.maf/Samples

これらのアプリケーションを表示するには、PublicSamples.zipファイルをJDeveloper作業ディレクトリ(これは通常、User Home Directory/jdeveloper/myworkです)に抽出します。

これらのアプリケーションについては、すべて表E-1 で説明されています。特に断りがないかぎり、これらのアプリケーションは、開発環境を構成した後でシミュレータにデプロイできます(『Oracle Mobile Application Frameworkのインストール』を参照)。

HelloWorldアプリケーションが最初に表示され、残りのアプリケーションがアルファベット順に表示されます。


表E-1 サンプルのMAFアプリケーション

アプリケーション名 説明 サンプル・アプリケーションの実行に必要な追加のリソース キーワード

HelloWorld

これは、フレームワークの基本的な構造を示すMAFのhello worldアプリケーションです。この基本アプリケーションには、ローカルのHTMLファイルによって実装される単一のアプリケーション機能があります。このアプリケーションを使用して、開発環境が、アプリケーションのコンパイルとデプロイのために正しく設定されていることを確認します。「MAFアプリケーションの作成時に行われる処理」も参照してください。

 

ローカルHTML

ACS

このアプリケーションは、SecurityDemoアプリケーション内で使用されてログイン・サーバーとアクセス制御サービスを構成するRESTサービスを提供します。

このWebアプリケーションは、WebLogic Serverにデプロイする必要があります。

REST、アクセス制御サービス

APIDemo

このアプリケーションは、MAF AMXページ内からカスタムJavaScriptメソッドを呼び出す方法を示します。DeviceFeaturesデータ・コントロールに含まれていないApache Cordova APIを呼び出すには、このアプローチを使用します。また、この方法を使用してカスタムJavaScriptメソッドをアプリケーションに追加でき、これらのメソッドを起動できます。さらに、このアプリケーションでは、JavaScriptメソッドからJavaをコール・バックする方法を示します。「アプリケーション機能の表示プロパティの設定」および「MAFコンテナ・ユーティリティAPI」も参照してください。

JavaScript、Java

BarcodeDemo

このアプリケーションは、バッキングBeanから起動する埋込みJavaScriptからBarcodeScannerプラグインをコールすることで、Cordovaプラグインの活用方法を示しています。「MAFアプリケーションでのプラグインの使用方法」も参照してください。

Cordova、バーコード、JavaScript

BeaconDemo

このアプリケーションは、Cordovaプラグインを使用してiBeaconを検出する方法を示しています。「MAFアプリケーションでのプラグインの使用方法」も参照してください。

Cordova、ビーコン、JavaScript、ローカル通知

CompGallery

このアプリケーションは、MAF AMX UIコンポーネントのすべてを示すことによって、コンポーネントを紹介する役割を果たします。このアプリケーションを使用して、UIコンポーネントの属性を変更し、その変更の効果をリアルタイムで確認できます。変更を行うたびにアプリケーションを再コンパイルして再デプロイする必要はありません。一般的な情報については、「MAF AMXユーザー・インタフェースの作成」を参照してください。

UIレイアウト、AMX

ConfigServiceDemo

このアプリケーションは、Configuration Serviceを使用して、MAFアプリケーションで使用されているエンド・ポイントを変更する方法を示しています。connections.xmlファイル内のエンド・ポイントの変更は、モバイル・デバイス上のアプリケーションに伝播され、アプリケーションは再初期化されて新しいエンド・ポイントを消費します。「MAFアプリケーションで使用されるエンド・ポイントの構成の概要」も参照してください。

このアプリケーションは、リモートのconnections.xmlファイルをホストするACSのサンプル・アプリケーションとともに使用されます。

構成サービス、ホワイトリスト接続

CRUDDemo

このアプリケーションは、SQLiteデータベースおよびJava beanデータ・コントロールを使用してCRUD操作を構築する方法を示します。このアプリケーションでは従業員のリストが表示され、ユーザーが従業員の作成、更新および削除を行うことができます。このアプリケーションは、ローカルのSQLiteデータベースを使用してそのデータを格納し、CRUD操作中のデータを永続化します。さらに、このアプリケーションでは、作成操作および削除操作を使用してアイテムをコレクションに追加したり、コレクションから削除する方法も示しています。一般的な情報については、次の項を参照してください。

Java、SQLite、データベース

DatePicker

このアプリケーションは、モバイル・デバイスのネイティブ日付ピッカー・コンポーネントを起動するカスタムのCordovaプラグインの使用方法を示しています。さらに、このアプリケーションでは、カスタムのCordovaプラグインを起動するカスタムMAF AMXコンポーネントを使用する方法も示しています。一般的な情報については、次の項を参照してください。

Cordova、カスタムAMX

DeviceDemo

このアプリケーションは、DeviceFeaturesデータ・コントロールを使用して、地理的位置、電子メール、SMS、連絡先などのデバイス機能を公開する方法、およびモバイル・デバイスにそのプロパティを問い合せる方法を示しています。また、このアプリケーションでは、DeviceFeaturesデータ・コントロールからdisplayFileメソッドを使用して、.doc.ppt.xls.pngなど、様々なタイプのファイルを表示する方法も示しています。次の各項も参照してください。

SMSおよび一部のデバイス・プロパティはiOSシミュレータまたはAndroidエミュレータ上では機能しないため、このアプリケーションは実際のモバイル・デバイス上で実行する必要があります。

DeviceFeaturesデータ・コントロール、地理的位置、SMS、連絡先、displayFile、Cordova

ExpandCollapseComponent

このアプリケーションは、どのタイプのMAF AMXコンポーネントのコンテナとしても機能するカスタム・コンポーネントの作成方法を示しています。また、展開機能と縮小機能の例も提供します。詳細は、アプリケーションのjsフォルダ内のcardview.jsファイルを参照してください。このJavaScriptファイルには、コンポーネントのUIをレンダリングするメソッド(expandcollapse.prototype.render)が含まれています。さらに、カスタムUIコンポーネントの子コンポーネントをレンダリングする方法を示すメソッドも含まれています。「カスタムMAF AMX UIコンポーネントの作成」も参照してください。

カスタムAMX接続、JavaScript

FakeBeacon

このアプリケーションは、Cordovaプラグインを使用してiBeaconを装う方法を示しています。 このアプリケーションは、テスト用の実際のiBeaconがない場合に、BeaconDemoアプリケーションと組み合せて使用できます「MAFアプリケーションでのプラグインの使用方法」も参照してください。

Cordova、ビーコン、JavaScript

FragmentDemo

このアプリケーションは、フラグメントを使用して、テンプレートとして使用できる再利用可能なアーティファクトを定義する方法を示しています。これは、各アプリケーション機能に対して複数のコンテンツ・タイプを持たせ(たとえば、1つはタブレット用、1つは電話用)、毎回リストやフォームをコーディングしなくても済むようにフラグメントを使用する方法を示します。フラグメントに渡す属性の変数リストに加え、静的属性を使用する方法を示します。また、フラグメント内に埋め込まれたファセットおよびポップアップ・コンポーネントを公開する方法を示します。次の各項も参照してください。

フラグメント、UIレイアウト、AMX

GestureDemo

このアプリケーションは、MAFアプリケーションにおいてジェスチャーをどのように実装および使用できるかを示します。「ジェスチャーの有効化」も参照してください。

ジェスチャー

LifecycleEvents

このアプリケーションは、MAFアプリケーション自体およびその埋込みアプリケーション機能にライフサイクル・イベント・ハンドラを実装します。このアプリケーションは、アプリケーションがライフサイクルの特定の時点で自身のロジックを実行できるようにするためのコードを挿入する場所を示します。「MAFアプリケーションでのライフサイクル・リスナーの使用方法」も参照してください。

iOSの場合、LifecycleEventsサンプル・アプリケーションは、/Applications/Utilities/Console.appにあるコンソール・アプリケーションにデータを記録します。

ライフサイクル・イベント

LocalNotificationDemo

このアプリケーションは、MAFアプリケーション内でローカル通知のスケジュールおよび受信を行う方法を示しています。「ローカル通知の管理」も参照してください。

ローカル通知

Navigation

このアプリケーションは、バインドされたタスク・フローやルーターを含む、MAFの様々なナビゲーション技術を示します。また、ページ遷移についても示しています。「タスク・フローの作成」も参照してください。

ナビゲーション、タスク・フロー、ルーター、遷移

PrefDemo

このアプリケーションは、アプリケーション全体のユーザー設定ページおよびアプリケーション機能固有のユーザー設定ページを示します。一般的な情報については、「ユーザー・プリファレンスの有効化」を参照してください。

プリファレンス、設定

PushDemo

このアプリケーションは、Apple Push NotificationサーバーとGoogle Could Messagingサーバーを対象としたプッシュ通知の登録方法と受信方法を示します。このアプリケーションでは、Apple Push Notificationサービス(APNs)またはGoogle Cloud Messaging(GCM)サーバーのいずれか必要な方に登録し、ユーザーがサーバー・アプリケーションに一意のユーザーIDを登録できるようにします。サーバー・アプリケーションから、このアプリケーションを実行するモバイル・デバイスにAPNsまたはGCM経由でプッシュ通知を送信でき、最終的にプッシュ通知に含まれるメッセージがこのアプリケーションで表示されます。「プッシュ通知の有効化」も参照してください。

このアプリケーションは、プッシュ通知を開始する機能を提供するPushServerサンプル・アプリケーションとともに使用します。

プッシュ通知

PushServer

このWebアプリケーションは、プッシュ通知機能を実装する方法を示すためにPushDemoアプリケーションと連携して動作します。「プッシュ通知の有効化」も参照してください。

このWebアプリケーションは、WebLogic Serverにデプロイする必要があります。

プッシュ通知

RangeChangeDemo

このアプリケーションは、MAF AMXリスト・ビュー・コンポーネントが新しいデータを外部ソースからフェッチする必要がある場合に、RangeChangeEventを使用してJavaハンドラ・メソッドを起動する方法を示しています。また、その属性を使用してリスト・ビュー・コンポーネントのスクロールとバッファの動作を構成する方法も示しています。「ページングおよび動的スクロールの構成」も参照してください。

範囲変更リスナー、範囲変更イベント、リスト・ビュー、スクロール、バッファリング

SecurityDemo

このアプリケーションは、MAFアプリケーションを保護する方法、認証およびログイン・サーバーを構成する方法、アクセス制御サービスを使用する方法、セキュアなWebサービスにアクセスする方法を示しています。「MAFセキュリティの概要」も参照してください。

このアプリケーションは、ACSサンプル・アプリケーションで使用され、ログイン・サーバーとアクセス制御サービスの構成に使用されるRESTサービスを提供します。

認証、ログイン、アクセス制御サービス、セキュリティ

SkinningDemo

このアプリケーションは、提供されているスタイル・シートをオーバーライドするか、独自のスタイル・シートで拡張することで、MAFアプリケーションにスキンを適用し、固有のルック・アンド・フィールを追加する方法を示しています。また、このアプリケーションは、スキンがモバイル・デバイスのタイプに基づいてMAF AMX UIコンポーネントのスタイルを制御する方法も示します。また、実行時にスキン・ファミリ(初期状態またはカスタム)を変更する機能も示します。「MAFアプリケーションのスキニング」も参照してください。

スキン、AMX

SlidingWindows

このアプリケーションは、AdfmfSlidingWindowUtilities APIの使用方法を示しており、このAPIを使用すると、画面に複数のMAFアプリケーション機能を同時に表示できます。このアプリケーションは、AdfmfSlidingWindowUtilities APIを使用してカスタムSpringboardまたはグローバル・ナビゲーション・バーを作成する方法を示しています。「MAFアプリケーションでのスライディング・ウィンドウの作成」も参照してください。

スライディング・ウィンドウ

StockTracker

このアプリケーションは、データ変更イベントがどのようにJavaを使用して、データ変更をユーザー・インタフェースに反映できるかを示します。さらに、このアプリケーションでは、様々なUIレイアウトのユースケース、ジェスチャーおよび基本的なモバイルのパターンが示されます。また、このアプリケーションでは、MAF AMXの検証グループ・コンポーネントを使用してクライアント側の検証を有効にする方法を示しています(ポートフォリオの項のeditStock.amxを参照)。次の各項も参照してください。

データ変更イベント、UIレイアウト、ジェスチャー、UXパターン、検証

UILayoutDemo

このアプリケーションは、様々なページ・レイアウト(フロー、ストレッチまたは分割ビュー)を取り上げて、多様なMAF AMX UIの構成と手法を示します。 「ページ・レイアウトの設計」も参照してください。

UIレイアウト、AMX、DVT

URLSchemeDemo

このアプリケーションは、ブラウザ、電子メールまたはその他のアプリケーションのURLリンクから起動できるように、MAFアプリケーションのカスタムURLスキームを定義する方法を示しています。「カスタムURLスキームを使用したMAFアプリケーションの起動」も参照してください。

URLスキーム

WorkBetter

この人事管理アプリケーションでは、いくつかの異なるロールをシミュレートしてアプリケーションへのログインを実行でき、異なるダッシュボードのデータを取得できます。これにより、組織の重要なデータを表示でき、パフォーマンス、報酬、時系列関連の情報などのデータを様々なデータ視覚化コンポーネントによって表示できます。さらに、このアプリケーションには従業員ディレクトリが含まれており、特定の従業員のプロファイルを表示する方法が示されます。

このアプリケーションでは、MAF AMX UIコンポーネント・セットの機能、特に、非常に魅力的なUIの作成に使用できるデータ視覚化コンポーネントの機能が示されます。このアプリケーション・ナビゲーションは、再利用可能なアプリケーションの部分を組み込むタスク・フローの定義方法と、それらのタスク・フローで深い階層のドリルおよびバッキングを実行する方法を示します。このアプリケーションでは、MAF AMX UIの様々な手法とコンポーネント(UIのレイアウト・パターンや一般的なものから複雑なものまでUIコンポーネントの使用方法など)について豊富なデモンストレーションが提供されます。

注意:

これは、デバイス機能のすべてを活用しようとするMAFアプリケーションではなく、MAF AMX UI機能のショーケースです。デバイス機能の統合、ローカルSQLiteデータベースへのデータの永続化、データの作成、更新、パターンの削除などのデモンストレーションは、他のMAFサンプル・アプリケーションを参照してください。

一般的な情報については、「MAF AMXユーザー・インタフェースの作成」を参照してください。

UIレイアウト、UXパターン、フラグメント、REST