モバイル・アプリケーションを使用したOracle Mobile Hub SDKの構成
コードを記述する前に、モバイル・アプリケーションを使用してOracle Mobile Hub SDKを構成する必要があります。
SDKの追加
基本的なアプリケーション設定では、フレームワークを介さずに、iOSクライアントSDKをアプリケーションに追加します。
-
ダウンロード・ファイル
omce-ios-sdk-{n}.zip
({n}はSDKのバージョン番号)を解凍してマシンの任意のディレクトリに保存します。 -
Zipの抽出された内容から、
oracle_mobile_ios_sdk
ディレクトリをXcodeプロジェクト・ナビゲータにドラッグ・アンド・ドロップします。-
必要に応じて、「アイテムのコピー」を選択します。
-
「グループの作成」を選択します。
-
「終了」をクリックします。
特定のライブラリの
.a
ファイルがxcode内のアプリケーションの開発ツリーにコピーされると、対応するプラットフォームAPIがSDKコールを介してアプリで使用できるようになります。この時点では、SDKのすべての静的ライブラリをアプリケーションで使用できます。 -
-
プロジェクトのターゲットを選択し、「ビルド・フェーズ」タブを選択し、「ライブラリを使用したバイナリのリンク」を展開し、「+」ボタンをクリックして、次のライブラリを追加します。
-
CoreData.framework
-
CoreLocation.framework
-
libsqlite3.0.tbd
-
Security.framework
-
SystemConfiguration.framework
-
-
プロジェクトの「ビルド設定」セクションで、「他のリンカー・フラグ」をダブルクリックし(「 リンク」の下)、
-ObjC
を追加します。 -
「ビルドの設定」で、「検索パス」を開きます。
-
oracle_mobile_ios_sdk/release-iphoneos
をライブラリの検索パスに追加します。 -
ユーザーのヘッダー検索パスに
oracle_mobile_ios_sdk/release-iphoneos/include
を追加します。
-
-
解凍したzipの
Documentation
フォルダを展開し、OMC.plist
ファイルをコピーして、アプリケーションのメイン・アプリケーション・バンドルのルートに配置します。 -
ジャストコピーした
OMC.plist
ファイルを編集します。 -
Xcode 7以降では、リモート通信をHTTPS経由に強制するアプリケーション・トランスポート・セキュリティ(ATS)ポリシーを考慮する必要があります。
開発のみのため、アプリケーションの
Info.plist
ファイルに次のキーを追加して、アプリケーションのATSポリシーをオフにしてください。<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
注意:
本番ではこの設定を使用しないでください。アプリケーションに最適なセキュリティを提供していることを確認するために、Apple社のドキュメントを調べて、特定のドメインに対するATSの無効化とそれらのドメインに対する適切なセキュリティ強化の適用のためにApple社の推奨事項に従ってください。
SDKプロパティの構成
IOSアプリケーションでクライアントSDKを使用するには、アプリケーションにOMC.plist
構成ファイルを追加し、Oracle Mobile Hubのバックエンドの環境詳細およびその他の構成情報を入力する必要があります。同様に、SDKクラスではこの情報を使用して、認可、ロギング、イベント・トラッキング、データ同期およびその他の機能を管理します。
構成ファイルは、アプリケーションのメイン・バンドルのルートにパッケージ化します。
ファイルは、基本的に次の部分に分かれています。
-
mobileBackend
キーとその内容。この部分は、アプリケーションでバックエンドを使用している場合に含めます。SDKクラスは、ここで指定する環境および認証の詳細を使用して、apiへのRESTコールのバックエンドにアクセスし、HTTPヘッダーを構成します。
-
構成全体に適用されるキー(
logLevel
やoAuthTokenEndpoint
など)。通常、これらのキーはファイルの先頭に表示されますが、必須ではありません。
次に示すのと同じファイルをテキスト形式で示します。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"
<plist version="1.0">
<dict>
<key>logLevel</key>
<string>debug</string>
<key>logHTTP</key>
<true/>
<key>oAuthTokenEndPoint</key>
<string>https://MY_TOKEN_ENDPOINT</string>
<key>mobileBackend</key>
<dict>
<key>name</key>
<string>EasyShoppingMBE</string>
<key>baseURL</key>
<string>https://MY_CLOUD_DOMAIN.oracle.com</string>
<key>authentication</key>
<dict>
<key>type</key>
<string>oauth</string>
<key>oauth</key>
<dict>
<key>clientID</key>
<string>11dac238ffaa4b029e78e982114642ab</string>
<key>clientSecret</key>
<string>5624cbdd-a7c5-4c10-a758-6019a5ab8da8</string>
<key>enableOffline</key>
<true/>
</dict>
</dict>
</dict>
</dict>
</plist>
さらに、OMC.plist
ファイルのいくつかの重要なエントリについて説明します。
-
oAuthTokenEndPoint
—アプリケーションが認証トークンを取得する元のOAuthサーバーのURL。この鍵は、OAuthに依存して認証するすべてのアプリケーションに指定する必要があります。これはバックエンドの「Settings」ページから取得します。エンドポイントはベースURL (https://host.domain:port
の形式)のみにする必要があります。 -
logLevel
—アプリのコンソールに表示されるSDKロギングの量を決定します。デフォルト値はerror
です。その他の使用可能な値(詳細レベルの向上)は、warning
、info
およびdebug
です。値をnone
に設定することもできます。 -
logHTTP
—true
に設定すると、SDKはすべてのHTTPリクエストおよびレスポンスのヘッダーと本体をログに記録します。 -
mobileBackend
—バックエンドの認証の詳細および同期プロパティなどのその他のオプションの詳細を含むディクショナリ・エントリ。OAuthおよびHTTP資格証明などの認証の詳細をバックエンドの「設定」ページから取得します。
-
mobileBackend/baseUrl
—バックエンドを介してコールするすべてのapiのベースURL。これはバックエンドの「Settings」ページから取得します。 -
mobileBackend/authentication
—次の要素を含むディクショナリが含まれます。-
Oauth、
basic
、facebook
およびtokenExchangeの型
サブキー
(文字列
)の値
。 -
認証資格証明のあるディクショナリを含む認証タイプの1つ以上のサブキー。
basic
およびoauth
のサブキー内に、enableOffline
キーを追加することもできます。デフォルトでは、このプロパティはtrue
に設定されています。
-