
Kindle Fireでの一般的な実装方法
Kindle Fire にアプリへプッシュ通知を実装し、プッシュトークンを得るための実装方法をご紹介します。
Kindle Fire では Amazon Cloud Messaging の SDK を導入する必要があります。
Amazon アプリ・ゲームサービス SDK のダウンロード
Amazon アプリ・ゲームサービス SDK のページへアクセスします。
ページからリンクされている「プログラム材料ライセンス規約」への同意が必要なのでご確認の上、Android 用の SDK をダウンロードします。
プロジェクトへライブラリの追加
ZIP ファイルを展開するとサービス事にSDKが含まれています。AmazonDeviceMessaging
ディレクトリにある amazon-device-messaging-(バージョン).jar
ファイルが必要となります。
このファイルを Android Studio のプロジェクトへ追加します。Project ウィンドウを[Project Files]モードに切り替え、app フォルダを選択し、[Show in Explorer]もしくは[Reveal in Finder]を選択して、app フォルダの実体を開きます。
次に、appフォルダ内にあるlibsフォルダに、amazon-device-messaging-(バージョン).jar
ファイルをコピーします。
Android Studio に戻ると、Project ウィンドウの app フォルダ以下に libs フォルダが追加され、amazon-device-messaging-(バージョン).jar
ファイルが追加されます。amazon-device-messaging-(バージョン).jar
ファイルを右クリックし、[Add As Library…]を選択します。
次に、Project ウィンドウを[Android]に切り替え、Gradle Scripts という項目からアプリの設定を開きます。ここで Project と書かれた方がプロジェクト全体の設定、Module: app と書かれた方がアプリの設定となります。以下の行を探します。(implementationではなく、compileになっている場合もあります。)
|
|
この行を以下のように、provided に変更します。
|
|
マニフェストにパーミッションを追加する
AndroidManifest.xml を開き、以下のように編集します。
|
|
受信サービスを記述する
トークン・プッシュメッセージを受信した際に起動するサービスを実装します。ADMMessageHandlerBase
を継承したサービスを作成します。トークンの受信時に onRegistered
が呼ばれますのでこの中でサーバーへの登録処理を行います。また、通知が受信されるとonMessage
が呼ばれます。この中でNotificationクラスを使うなどしてユーザーに通知を提示します。
|
|
AndroidManifest.xml には以下のように記述して登録します。
|
|
受信ハンドラクラスを作成する
ADM から受け取ったメッセージを受信サービスへ中継するインテントレシーバーを作成します。これは、ADMMessageReceiver
を継承し、先ほど作成した ADMMessageHandlerBase
の派生クラスをコンストラクタで指定します。
|
|
AndroidManifest.xmlには以下のように記述して登録します。
|
|