解析データやイベントからトリガーされるアプリ内メッセージを配信できます。実装後、メッセージはアプリへと動的に配信され、コードを更新する必要はありません。
Adobe Experience Platform Mobile SDK に関する情報やドキュメントをお探しの場合こちらをクリックし、最新のドキュメントを参照してください。
2018 年 9 月に、SDK の新しいメジャーバージョンをリリースしました。これらの新しい Adobe Experience Platform Mobile SDK は、Experience Platform Launch から設定できます。
Adobe Experience Platform Mobile SDK を Adobe Launch で使用している場合、アプリ内メッセージおよびプッシュ通知などの機能を使用するには、Adobe Analytics Mobile Services 拡張機能もインストールする必要があります。詳しくは、「Adobe Analytics - Mobile Services」を参照してください。Experience Cloud SDK でのプッシュメッセージおよびアプリ内メッセージの使用について詳しくは、「プッシュメッセージの設定」および「アプリ内メッセージの設定」を参照してください。
アプリ内メッセージを使用するには、SDK バージョン 4.2 以降が必要です。
メッセージ自体と、Adobe Mobile Services でメッセージを表示するタイミングを定義するルールを作成できます。詳しくは、「アプリ内メッセージの作成」を参照してください。アプリ内メッセージを表示するには、SDK を更新する必要があります。メッセージをまだ定義していない場合でも、これらの手順を実行できます。定義したメッセージは、アプリへと動的に配信され、アプリストアを更新しなくても表示されます。
ライブラリをプロジェクトに追加し、ライフサイクルを実装します。
詳しくは、コア実装とライフサイクルの「IntelliJ IDEA または Eclipse プロジェクトへの SDK と設定ファイルの追加」を参照してください。
AndroidManifest.xml
ファイルを更新して、フルスクリーンアクティビティを宣言し、メッセージ通知ハンドラーを有効にします。
<activity
android:name="com.adobe.mobile.MessageFullScreenActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<receiver android:name="com.adobe.mobile.MessageNotificationHandler" />
モーダルレイアウトを選択した場合は、メッセージに対して次のいずれかのテーマを選択します。
Theme.Translucent.NoTitleBar.Fullscreen
Theme.Translucent.NoTitleBar
Theme.Translucent
以下に例を示します。
<activity
android:name="com.adobe.mobile.MessageFullScreenActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"
android:windowSoftInputMode="adjustUnspecified|stateHidden" />
<receiver android:name="com.adobe.mobile.MessageNotificationHandler" />
ライブラリをインポートします。
import com.adobe.mobile.*;
それぞれの collectLifecycleData
呼び出しで、this
を渡して現在のアクティビティへの参照を指定します。
@Override
public void onResume() {
Config.collectLifecycleData(this);
}
アプリ内メッセージに必要な設定が ADBMobileConfig.json
ファイルに含まれていることを確認します。
messages
または remotes
が必要です。
起動時にアプリ内メッセージを動的に更新するには、remotes
オブジェクトが存在し、正しく設定されている必要があります。
"messages": [
{
"messageId": "de45c43c-37bf-441f-8cbd-cc3ba3469ebe",
"template": "fullscreen",
"showOffline": false,
"showRule": "always",
"endDate": 2524730400,
"startDate": 0,
"audiences": [],
"triggers": [],
"payload": { // contents change depending on template
"html": "<html>html code goes here</html>"
},
},
…
]
"remotes" : {
"analytics.poi": "https://assets.adobedtm.com/…/yourfile.json",
"messages": "https://assets.adobedtm.com/…/yourfile.json"
}
このオブジェクトが設定されていない場合は、更新された ADBMobileConfig.json
ファイルを Adobe Mobile Services からダウンロードしてください。詳しくは、「事前準備」を参照してください。
Android Mobile SDK は、アプリ内メッセージに関する以下の指標を追跡します。
アプリ内メッセージの全画面およびアラートスタイルの場合:
カスタムの全画面アプリ内メッセージの場合は、メッセージ内の HTML コンテンツに次のボタンに関する SDK 追跡を通知する正しいコードが含まれている必要があります。
クリックスルー(リダイレクト)のトラッキング例:
adbinapp://confirm/?url=https://www.yoursite.com
キャンセル(終了)追跡の例:
adbinapp://cancel
全画面メッセージを作成する際には、必要に応じてフォールバック画像を指定できます。メッセージが Web から目的の画像を取得できない場合、SDK は、アプリケーションのアセットフォルダーをから同じ名前の画像を読み込もうとします。これにより、ユーザーがオフラインの場合や、事前に定義されている画像にアクセスできない場合でも、メッセージを元の形式で表示できます。
フォールバック画像アセット名は、Adobe Mobile Services でメッセージを設定するときに指定されます。指定されたリソースが使用可能であることを確認する必要があります。
次のメソッドを使用すると、通知領域に表示される小さいアイコンと大きいアイコンのほか、通知ドロワーに通知が表示されたときに表示される大きいアイコンを設定できます。
Config.setSmallIconResourceId(int resourceId)
SDK で作成される通知で使用する小アイコンを設定します。このアイコンはステータスバーに表示され、ユーザーが通知センターで完全な通知を表示する際に表示されるセカンダリ画像です。
このメソッドの構文を次に示します。
public static void setSmallIconResourceId(final int resourceId);
このメソッドのコードサンプルを次に示します。
Config.setSmallIconResourceId(R.drawable.appIcon);
Config.setLargeIconResourceId(int resourceId)
SDK で作成される通知に使用される大きいアイコンを設定します。このアイコンは、ユーザーが通知センターで完全な通知を表示する際に表示されるプライマリ画像です。
このメソッドの構文を次に示します。
public static void setLargeIconResourceId(final int resourceId);
このメソッドのコードサンプルを次に示します。
Config.setLargeIconResourceId(R.drawable.appIcon);