Android アプリケーションへの MobileFirst Foundation SDK の追加

improve this page | report issue

概説

IBM Mobile Foundation SDK は、Maven Central を通じて入手可能な依存関係の集合で構成されます。この SDK は、Android Studio プロジェクトに追加できます。これらの依存関係は、次のようなコア機能およびその他の機能に対応しています。

  • IBMMobileFirstPlatformFoundation - クライアントとサーバー間の接続を実装し、認証およびセキュリティーの各側面、リソース要求、およびその他の必要なコア機能を処理します。
  • IBMMobileFirstPlatformFoundationJSONStore - JSONStore のフレームワークを含んでいます。詳しくは、Android 用 JSONStore に関するチュートリアルを参照してください。
  • IBMMobileFirstPlatformFoundationPush - プッシュ通知のフレームワークを含んでいます。詳しくは、通知に関するチュートリアルを参照してください。

このチュートリアルでは、Gradle を使用して MobileFirst ネイティブ SDK を新規または既存の Android アプリケーションに追加する方法について学習します。また、アプリケーションを認識するように MobileFirst Server を構成する方法と、プロジェクトに追加する MobileFirst 構成ファイルに関する情報を見つける方法についても学習します。

前提条件:

ジャンプ先:

MobileFirst ネイティブ SDK の追加

以下の手順に従って、新規または既存の Android Studio プロジェクトに MobileFirst ネイティブ SDK を追加し、アプリケーションを MobileFirst Server インスタンスに登録します。

開始する前に、MobileFirst Server が稼働していることを確認します。
ローカルにインストールされているサーバーを使用する場合: コマンド・ライン・ウィンドウで、サーバーのフォルダーに移動し、次のコマンドを実行します。./run.sh (Mac または Linux OS の場合) または run.cmd (Windows の場合)

Android アプリケーションの作成

Android Studio プロジェクトを作成するか、または既存のプロジェクトを使用します。

SDK の追加

  1. 「Android」→「Gradle Scripts」で、build.gradle (Module: app) ファイルを選択します。

  2. 次の行を、apply plugin: 'com.android.application' の後に追加します。

    repositories{
         jcenter()
    }
    
  3. 次の行を、android セクション内に追加します。

    packagingOptions {
    pickFirst 'META-INF/ASL2.0'
         pickFirst 'META-INF/LICENSE'
         pickFirst 'META-INF/NOTICE'
    }
    
  4. 次の行を、dependencies セクション内に追加します。

    compile group: 'com.ibm.mobile.foundation',
         name: 'ibmmobilefirstplatformfoundation',
         version: '8.0.+',
         ext: 'aar',
         transitive: true
    
         ```
    
    または、次のように 1 行で追加します。
    
    ```xml
    compile 'com.ibm.mobile.foundation:ibmmobilefirstplatformfoundation:8.0.+'
    
  5. 「Android」→「app」→「manifests」で、AndroidManifest.xml ファイルを開きます。次のアクセス権を、application エレメントの上に追加します。

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    
  6. 既存の activity エレメントの後に、次の MobileFirst UI アクティビティーを追加します。

    <activity android:name="com.worklight.wlclient.ui.UIActivity" />
    

Gradle Sync 要求が表示された場合は、同意します。

MobileFirst ネイティブ SDK の手動での追加

次のように、MobileFirst SDK を手動で追加することもできます。

MobileFirst SDK を手動で追加するには、まず最初に「MobileFirst Operations Console」→「ダウンロード・センター」→「SDK」タブで SDK の .zip ファイルをダウンロードします。上記の手順を完了した後、以下の手順にも従います。

  • ダウンロードした .zip ファイルを解凍し、関連する aar ファイルを app\libs フォルダーに入れます。
  • 次の行を dependencies クロージャーに追加します。
    compile(name:'ibmmobilefirstplatformfoundation', ext:'aar')
    compile 'com.squareup.okhttp3:okhttp-urlconnection:3.4.1'   
    compile 'com.squareup.okhttp3:okhttp:3.4.1'
  • 次の行を repositories クロージャーに追加します。
    repositories {
        flatDir {
            dirs 'libs'
        }
    }

アプリケーションの登録

  1. コマンド・ライン・ウィンドウを開き、Android Studio プロジェクトのルートに移動します。

  2. 次のコマンドを実行します:

     mfpdev app register
    

mfpdev app register CLI コマンドは、まず最初に MobileFirst Server に接続してアプリケーションを登録し、続けて mfpclient.properties ファイルを Android Studio プロジェクトの [project root]/app/src/main/assets/ フォルダーに作成し、これに、MobileFirst Server を識別するメタデータを追加します。

ヒント: 次のように、MobileFirst Operations Console からアプリケーションを登録することもできます。

  1. MobileFirst Operations Console をロードします。
  2. 「アプリケーション」の横の「新規」ボタンをクリックして、新規アプリケーションを登録し、画面に表示される指示に従います。
  3. アプリケーションが登録されたら、そのアプリケーションの「構成ファイル」タブに移動して、mfpclient.properties ファイルをコピーまたはダウンロードします。画面上に表示される指示に従って、ファイルをプロジェクトに追加します。

WLClient インスタンスの作成

MobileFirst API を使用する前に、次のように WLClient インスタンスを作成します。

WLClient.createInstance(this);

注: WLClient インスタンスの作成は、アプリケーションのライフサイクル全体で一度だけ行います。このインスタンスの作成には、Android の Application クラスを使用することを推奨します。

MobileFirst ネイティブ SDK の更新

MobileFirst ネイティブ SDK を最新リリースで更新するには、リリースのバージョン番号を調べ、build.gradle ファイル内の version プロパティーを適宜更新します。
上記のステップ 4 を参照してください。

SDK のリリースは、SDK の JCenter リポジトリーで調べることができます。

生成されるMobileFirst ネイティブ SDK 成果物

mfpclient.properties

Android Studio プロジェクトの ./app/src/main/assets/ フォルダー内に配置されているこのファイルは、MobileFirst Server に Android アプリケーションを登録するために使用される、クライアント・サイドのプロパティーを定義します。

プロパティー 説明 値の例
wlServerProtocol MobileFirst Server との通信プロトコル。 http または https
wlServerHost MobileFirst Server のホスト名。 192.168.1.63
wlServerPort MobileFirst Server のポート。 9080
wlServerContext MobileFirst Server 上のアプリケーションのコンテキスト・ルート・パス。 /mfp/
languagePreferences クライアントの SDK システム・メッセージのデフォルト言語を設定します。 en

Javadoc および Android Service のサポート

Javadoc および Android Service のサポートについては、追加情報のページを参照してください。

次に使用するチュートリアル

これで MobileFirst ネイティブ SDK が組み込まれたので、以下の作業を行うことができます。

Last modified on August 23, 2017