Amazon Device Messaging(ADM)をセットアップする


Amazon Device Messaging(ADM)をセットアップする

アプリでAmazon Device Messaging(ADM)を使用するには、まずADM JARを開発環境に組み込む必要があります。以下のいずれかの方法で、組み込み作業を行ってください。

  • Android Studioを使用する
  • オープンソースの統合開発環境(IDE)である、Eclipseを使用する
  • コマンドラインを使用する

ADMアーキテクチャについては、Amazon Device Messaging(ADM)についてを参照してください。ADMの初期認証情報を取得するプロセスは、認証情報を取得するに記載されています。

プロジェクトでADMを使用するには、開発用コンピューターに以下をインストールします。

  • Android SDK(API 15以上)
  • Android SDKのシステム要件(JDKなど)

プロジェクトを構成する前に、Amazon Mobile App SDKをダウンロードしてください。同SDKをダウンロードすると、Program Materials License Agreementに同意したものとみなされます。SDKの内容を任意の場所に展開します。

ADMをIDEプロジェクトに追加する

IDEベースのプロジェクトでADMを使用するには、ADMライブラリを外部JARとしてプロジェクトに追加します。ADMはどの開発環境でも使用できますが、以下のセクションではADMをAndroid StudioやEclipseに追加する方法を取り上げます。

ADMをAndroid Studioに追加する

必ずAndroid Studioの最新バージョンをダウンロードし、インストールしておいてください。

  1. Android Studioで新規Androidプロジェクトを作成するか、既存プロジェクトを開きます。
  2. フォルダ構造をAndroidからProjectに変更します。

    change-folder-structure
    Android Studioでフォルダ構造を変更する
  3. appフォルダ内でlibsフォルダを見つけます。

    find-libs-in-apps-folder
    appフォルダ内でlibsフォルダを見つける
  4. ADMのzipファイルを展開した場所からamazon-device-messaging-1.0.1.jarファイルをコピーします。
  5. jarファイルをlibsフォルダに貼り付けます。

    paste-jar-in-libs
    libsにjarファイルを貼り付ける
  6. jarファイルを右クリックし、[Add as library] を選択します。

    add-library
    jarファイルをライブラリとして追加する

    これにより、自動的にcompile files('libs/amazon-device-messaging-1.0.1.jar')コマンドがbuild.gradleファイルに追加されます。

  7. ライブラリはコンパイル時にのみ必要で、実行時には必要ないため(必要なクラスとメソッドはAmazonデバイスに含まれています)、compile filesをprovided filesに変更します。

    変更前:

    dependencies {
        compile files('libs/amazon-device-messaging-1.0.1.jar')
    }
    

    変更後:

    dependencies {
        provided files('libs/amazon-device-messaging-1.0.1.jar')
    }
    

ADMをEclipseに追加する

Eclipse用のAndroid Development Tools(ADT)プラグインをインストールしておいてください。

  1. Eclipseで新規Androidプロジェクトを作成するか、既存プロジェクトを開きます。
  2. プロジェクトのプロパティを開きます。たとえば、プロジェクトのルートフォルダを右クリックし、[Properties] をクリックします。
  3. プロパティの一覧から [Java Build Path] を選択して、[Libraries] タブをクリックします。

  4. [Add External JARs] をクリックし、ADMのzipファイルを展開した場所に移動します。
  5. DeviceMessaging/libフォルダを開き、amazon-device-messaging-1.0.1.jarファイルを選択して、[Open] をクリックします。
  6. [Properties] ウィンドウにamazon-device-messaging.jarが表示されたら、[OK] をクリックします。

    プロジェクトのPackage Explorerにおいて、[Referenced Libraries] 内にamazon-device-messaging.jarが表示されます。

コマンドラインからADMを追加する

この手順を実行する前に、アプリを統合するに記載の説明に従って、AndroidManifest.xmlファイルを更新します。また、Apache ANTがインストールされていることを確認してください(環境変数のANT_HOMEJAVA_HOMEPATHが、正しく定義されている必要があります)。

  1. ディレクトリをAndroid SDKのtools/パスに変更します。
  2. 以下の構文を使用してコマンドを実行します。ここで、<path>はプロジェクトを作成する場所、<ターゲットのAndroidプラットフォーム>はプロジェクト用のAndroidプラットフォームを表します。利用可能なプラットフォームの一覧を表示するには、android list targetsを実行してください。

    android create project --path <パス> --target <ターゲットのAndroidプラットフォーム> --activity ADMActivity --package com.example.amazon.adm
    
  3. 新規プロジェクトのルートで、ext_libsと名付けた新しいディレクトリを作成します。
  4. Amazon Mobile App SDKのAndroid/DeviceMessaging/libディレクトリに移動し、新しいext_libsディレクトリにjarファイルをコピーします。
  5. 新規プロジェクトのルートでcustom_rules.xmlファイルを作成します。同ファイルの内容は次のとおりです。

    <?xml version="1.0" encoding="UTF-8"?>
    <project name="custom_rules">
    <path id="java.compiler.classpath.path">
    <fileset dir="ext_libs" includes="*.jar"/>
    </path>
    <property name="java.compiler.classpath" refid="java.compiler.classpath.path" />
    </project>
    
  6. プロジェクトをビルドするには、プロジェクトのルートディレクトリで次のコマンドを実行します。

    ant debug
    

アプリをテストするプロジェクトを構成する際も、同様の手順を実行するようにしてください。

Proguardを構成する

Proguardを使用する場合は、proguard.cfgファイルを編集して次の構成を追加します。

#ADMのjarファイルが格納されたディレクトリを指す必要があります
-libraryjars libs
-dontwarn com.amazon.device.messaging.**
-keep class com.amazon.device.messaging.** {*;}
-keep public class * extends com.amazon.device.messaging.ADMMessageReceiver
-keep public class * extends com.amazon.device.messaging.ADMMessageHandlerBase