トピック×
アプリ内メッセージ
iOS アプリでアプリ内メッセージを使用するのに役立つ情報です。
アプリ内メッセージを使用するには、SDK バージョン 4.2 以降が
必要
です。
注意事項:
- メッセージおよびメッセージをいつ表示するかを定義するルールは、Adobe Mobile Services で作成されます。詳しくは、 アプリ内メッセージの作成 を参照してください。
- アプリ内メッセージを表示するには、この節で説明するアップデートを SDK に対しておこなう必要があります。メッセージを定義していない場合でも、これらの手順を実行できます。定義したメッセージは、アプリに動的に配信され、アプリストアの更新なしで表示されます。
アプリ内メッセージの有効化
- ライブラリをプロジェクトに追加し、ライフサイクルを実装します。詳しくは、 コア実装とライフサイクル の「 プロジェクトへの SDK と設定ファイルの追加 」を参照してください。
- ライブラリをインポートします。
#import "ADBMobile.h"
- アプリ内メッセージに必要な設定が ADBMobileConfig.json ファイルに含まれていることを確認します。
- アプリ内メッセージを起動時に動的に更新するには、 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” }
messages または remotes が必要です。これらのオブジェクトが設定されていない場合は、更新された ADBMobileConfig.json ファイルを Adobe Mobile Services からダウンロードしてください。詳しくは、「 コア実装とライフサイクルい 」を参照してくださ。
アプリ内メッセージの追跡
iOS Mobile Services SDK はアプリ内メッセージに関する次の指標を追跡します。
- 全画面および警告方式のアプリ内メッセージの場合:
- インプレッション :ユーザーがアプリ内メッセージをトリガーしたとき。
- クリックスルー :ユーザーが クリックスルー ボタンを押したとき。
- キャンセル :ユーザーが キャンセル ボタンを押したとき。
- カスタムの全画面アプリ内メッセージの場合は、メッセージ内の HTML コンテンツに次のボタンに関する SDK 追跡を通知する正しいコードが含まれている必要があります。
- クリックスルー (リダイレクト)のトラッキング例: adbinapp://confirm/?url=https://www.yoursite.com
- キャンセル (終了)追跡の例: adbinapp://cancel
- ローカル(リモート)通知の場合:
- インプレッション :ユーザーが通知をトリガーしたとき。
- オープン :ユーザーが通知からアプリケーションを開いたとき。 以下にオープン追跡のコードを追加した例を示します。
- (BOOL) application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { // handle local notification click-throughs for iOS 10 and older NSDictionary *localNotificationDictionary = launchOptions[UIApplicationLaunchOptionsLocalNotificationKey]; if ([localNotificationDictionary isKindOfClass:[NSDictionary class]]) { [ADBMobile trackLocalNotificationClickThrough:localNotificationDictionary]; } } - (void) application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { [ADBMobile trackLocalNotificationClickThrough:notification.userInfo]; }
ローカルフォールバック画像
Adobe Mobile Services で全画面表示メッセージを作成する際、オプションでフォールバック画像を指定できます。メッセージが Web から目的の画像を取得できない場合、SDK はアプリケーションバンドルから同じ名前の画像を読み込もうとします。この機能により、ユーザーがオフラインだったり、既定の画像に到達できなくても、オリジナルの形でメッセージを表示できます。
フォールバック画像のアセット名は、Adobe Mobile Services でメッセージを設定する際に指定します。
指定したリソースが使用可能であることを確認する必要があります。