iOS の詳細設定
ユーザー・セグメント、カスタム・パラメータ、価格帯など、iOSの詳細設定を構成して、広告の配信とMonetizationを最適化します。
読み終わるまでの所要時間 19 分最終更新 7日前
セグメントの定義
特定のオーディエンスに合わせて広告の配信方法をカスタマイズできるようになりました。ユーザーの詳細をサーバーに通知して、ユーザーが属するセグメントに応じてSDKが広告を配信するようにする必要があります。
LevelPlay プラットフォームは、データをサーバーに送信してユーザーセグメントのアウトラインを作成する 3 つの方法をサポートしています。
- カスタムセグメント: ユーザーの詳細をサーバーに伝えることなく、定義済みの条件でカスタムセグメントを作成し、LevelPlay プラットフォームでそのユーザーセグメントの広告設定を調整できます。
- ユーザープロパティ: SDKによって収集されないユーザーデータ(例えば、レベル、支払い状態、作成日など)は、APIを介してリレーする必要があります。(サポートされているセグメント プロパティの全リストと以下のセクションの説明を参照してください)。指示に従ってこれらの詳細を送信し、LevelPlay プラットフォームで定義したセグメントに関連する広告設定を SDK が適用できるようにします。
- デバイスプロパティ: LevelPlay SDK は、デバイスモデル、デバイス製造元、アプリケーションバージョン、OS など、ユーザーのデバイスに関連する特定の標準パラメータを自動的に収集します。このデータを当社に送信する必要はありません
LPMSegment API を使用して、セッション中にセグメント化を変更できます。これは次にロードされる広告に影響し、各広告単位をロードする前に呼び出すことでウォーターフォールに動的に影響します。LevelPlay のセグメント化の詳細については、こちらを参照してください。
Pass ユーザープロパティ
LevelPlay プラットフォームでセグメントを定義したら、サーバーにユーザーの詳細情報を通知する必要があります。LevelPlay には、API でユーザーをセグメントにアトリビュートするように設定できる、範囲な標準ユーザープロパティが用意されています。
まず、セグメントを初期化します。
LPMSegment *セグメント = [[LPMSegment alloc]init];
セグメントのベースとなるサーバーに送信するプロパティを定義します。 この情報は以下のいずれかの方法で送信できます。
-
ユーザーが属するセグメントに精通している場合は、セグメント名を入力します。[segment setSegmentName:YOUR_SEGMENT_NAME];
-
ユーザー詳細をお送りください。説明は下の表を参照してください。// ユーザーレベルの設定[segment setLevel:USER_LEVEL];// ユーザーの支払い状態の設定[セグメント setPaying:ユーザー_支払い];// ユーザーの合計アプリ内課金履歴の設定[segment setIapTotal:YOUR_IAP_TOTAL];// ユーザー作成日の設定[segment setUserCreationDate:YOUR_DATE];さらに、セグメントごとに最大5つのカスタムユーザープロパティを設定できます。[segment setCustomValue:YOUR_CUSTOM_VALUE forKey:YOUR_CUSTOM_KEY];次に、セグメントに基づいて広告ユニットを配信するには、セグメント名またはユーザープロパティーのいずれかを指定して以下の機能を呼び出します。[LevelPlay setSegment:YOUR_SEGMENT];
サポートされるセグメントプロパティ
セグメントプロパティ | 型 | 制限 | 説明 |
|---|---|---|---|
| segmentName | String | - 英数字 - 最大 32 文字 | LevelPlay アカウントのセグメントの指定された名前 |
| 支払い | Boolean | Yes または No | - ユーザーがアプリケーション内課金にお金を使ったことがない場合は true - ユーザーがアプリケーション内課金にお金を使ったことがない場合は false |
| iap_total | ダブル | 1-999999.99 | ユーザーがアプリケーション内課金に費やした金額の合計 |
| userCreationDate | NSDate | 0 より小さい値にすることはできません | ユーザーがアプリケーションをインストールした日付 |
| カスタムパラメーター | key=string, value=string | - LevelPlay は、最大 5 つのカスタムパラメーター (英数字 - 最大 32 文字) をサポートします。 | サーバにディスパッチする追加データ |
ユーザーのセグメント名の取得
-
クラスでこのインターフェースを使用して、セグメント名プロトコルに準拠し、セグメント名の受信を有効にします。
LPMSegmentDelegate -
以下のデリゲートに登録して、ユーザーが属するセグメント名を取得します。その後、SDKはデリゲートにイベントを通知します。[LevelPlay setSegmentDelegate:self];デリゲートコールバックの実装:例を次に示します。- (void)didReceiveSegment:(NSString *)segment;
リワードサーバーからサーバーへのコールバックのカスタムパラメーター
LevelPlay SDK 8.11.0 から、サーバー間 (S2S) コールバックでサーバーに送信されるリワード広告ユニットにカスタムパラメーターを渡すことができます。キーと JSON 文字列値をしてパラメータを設定します。
LevelPlay_Rewarded_Server_ParamssetMetaData- カスタムパラメータは、サーバー間の完了コールバックとともにのみ機能します。パラメーターはコールバックバックの一部として受け取ります。
- 複数のカスタムパラメーターを挿入できます。
例:
NSDictionary *params = @{ @"key1": @"value1", @"key2": @"value2" };NSData *jsonData = [NSJSONSerialization dataWithJSONObject:params options:0 error:nil];NSString *jsonString = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];[LevelPlay setMetaDataWithKey:@"LevelPlay_Rewarded_Server_Params" value:jsonString];
価格下限の設定
フロア設定 API では、特定の広告単位に下限を設定できます。ユーザーごとに最低価格を設定することで、ターゲティングの効率を高め、待ち時間を削減し、広告パフォーマンスを最適化できます。価格下限は広告オブジェクトの作成時に割り当てる必要があり、そのオブジェクトのその後のすべてのロードに適用されます。
プロパティ | 型 | 説明 |
|---|---|---|
| 入札フロア | double | 従来のインスタンスと入札者に適用される最小 eCPM を定義する米ドルの価格。 |
インタースティシャル広告の例
// 価格下限設定の定義LPMInterstitialAdConfig *adConfig = [[LPMInterstitialAdConfigBuilder new] setBidFloor:1.23] ビルド]; // 米ドルで最低価格を設定// 設定をインタースティシャル広告単位に適用LPMInterstitialAd *interstitialAd = [[LPMInterstitialAd alloc] initWithAdUnitId:@"adUnitId" config:adConfig];
インタースティシャルの完全な実装は、こちらで利用できます。
リワード広告の例
// 価格下限設定の定義LPMRewardedAdConfig *adConfig = [[LPMRewardedAdConfigBuilder new] setBidFloor:1.23] ビルド]; // 米ドルで下限価格を設定// リワード型広告単位に設定を適用LPMRewardedAd *rewardedAd = [[LPMRewardedAd alloc] initWithAdUnitId:@"adUnitId" config:adConfig];
リワード広告の完全実装は、こちらで利用できます。
バナー広告の例
// 価格下限設定の定義LPMBannerAdViewConfig *adConfig = [[LPMBannerAdViewConfigBuilder new] setBidFloor:1.23] ビルド]; // 米ドルで下限価格を設定// バナー広告単位に設定を適用LPMBannerAdView *bannerAd = [[LPMBannerAdView alloc] initWithAdUnitId:@"adUnitId" config:adConfig];
バナー広告の完全な実装は、こちらで利用できます。
LevelPlay SDK のエラーコード
LevelPlay は、SDK インテグレーションで障害が発生した場合に説明を提供するエラーフィードバックメカニズムを提供します。これらのエラーは、問題が発生したときやインテグレーションのアスペクトが正しく完了しなかったときに発生します。
LevelPlay Error オブジェクトには、エラー コードとメッセージが含まれます。以下は、考えられるすべてのエラーと、その機能に基づくメッセージです。
エラーコード | 広告ユニット | 説明 |
|---|---|---|
| 508 | N/A |
|
| 509 | インタースティシャル、動画リワード | Show Fail:No ads to show | (表示する広告がありません)
| 510 | インタースティシャル、動画リワード、バナー | ロード失敗:サーバー反応失敗 |
| 520 | インタースティシャル、動画リワード | Show Fail:インターネット接続なし。TrackNetworkState が有効になっている必要があります。
Show Fail:インターネット接続なし |
| 524 | インタースティシャル、動画リワード | Show Fail:配置%@ はペースごとに定義された制限に達しました
Show Fail:配置%@ が制限に達しました |
| 526 | インタースティシャル、動画リワード | Show Fail:広告単位がセッションあたりの 1 日の上限に達しました |
| 604 | バナー | 配置に上限があるためロードできません |
| 605 | バナー | バナーのロード中に予期しない例外が発生しました |
| 606 | バナー | 最初のロード時にすべてのネットワークでバナーが埋められない |
| 1007 | インタースティシャル、動画リワード | オークション失敗:オークションリクエストに必要な情報がすべて含まれていませんでした |
| 1022 | 動画リワード | Show Fail:別の RV が表示されている間は RV を表示できない |
| 1023 | 動画リワード | Show Fail:Show RV called when there are no available ads to show | (表示できる広告がない場合に呼び出される RV の表示)
| 1035 | インタースティシャル | Empty Waterfall |
| 1036 | インタースティシャル | Show Fail:別のインタースティシャルが表示されている間はインタースティシャルを表示できない |
| 1037 | インタースティシャル | ロード失敗:別のインタースティシャルが表示されている間はインタースティシャルをロードできません |
| 1039 | インタースティシャル | show interstitial | の呼び出し中の例外