Android の詳細設定
ユーザー・セグメント、カスタム・パラメータ、価格帯など、Androidの詳細設定を構成して、広告の配信とMonetizationを最適化します。
読み終わるまでの所要時間 17 分最終更新 6日前
セグメントの定義
特定のオーディエンスに合わせて広告の配信方法を簡単に調整できるようになりました。ユーザーの詳細をサーバーに通知して、ユーザーが属するセグメントに応じてSDKが広告を配信するようにする必要があります。
LevelPlay SDK は、データをサーバーに送信してユーザーセグメントのアウトラインを作成する 3 つの方法をサポートしています。
- デバイスプロパティ: LevelPlay SDK は、場所、デバイスモデル、デバイス製造元、アプリケーションバージョン、OS など、ユーザーのデバイスに自動的に関連する特定の標準パラメータを収集します。このデータを当社に送信する必要はありません。
- ユーザープロパティ: 包括的なユーザーデータ (例えば、年齢、性別、作成日) は API を通じてリレーする必要があります。(サポートされているセグメント プロパティの全リストと以下のセクションの説明を参照してください。)指示に従ってユーザーの詳細を送信し、LevelPlay プラットフォームで定義したセグメントに基づいて SDK がさまざまなユーザーを分類できるようにします。
- カスタムセグメント: ユーザーの詳細をサーバに送信せずにカスタムセグメントを作成し、そのユーザーセグメントの広告設定を調整できます。
動的セグメント化
LevelPlay SDK 7.2.0 以降を使用している場合は、LevelPlaySegment API を使用してセッション中にセグメント化を変更できます。
これは次にロードされる広告に影響し、各広告単位をロードする前に呼び出すことで、 ウォーターフォール に動的に影響します。LevelPlay のセグメント化の詳細については、こちらを参照してください。
Pass ユーザープロパティ
LevelPlay プラットフォームでセグメントを定義したら、サーバーにユーザーの詳細情報を通知する必要があります。
セグメントのベースとなるサーバーに送信するプロパティを定義します。この情報は以下のいずれかの方法で送信できます。
- ユーザーが属するセグメントに精通している場合は、セグメント名を入力します。
mLPSegment.setSegmentName(name);
- ユーザー詳細をお送りください。LevelPlay SDK は、API でユーザーをセグメントにアトリビュートするように設定できる、範囲な標準ユーザープロパティを提供します。サポートユーザーセグメントのプロパティの表を下にスクロールします。
// Create segment objectmLPSegment = new LevelPlaySegment();// Set user's levelmLPSegment.setLevel(level);// Set user creation datemLPSegment.setUserCreationDate(date);// Set user's total in-app purchasesmLPSegment.setIAPTotal(iapt);// Set user's paying statusmLPSegment.setIsPaying(isPaying);
さらに、セグメントごとに最大5つのカスタムユーザープロパティを設定できます。
// Set custom parameters (up to 5)mLPSegment.setCustom(key, value);
次に、セグメントに基づいて広告ユニットを提供し、ユーザーの広告体験を調整するには、セグメント名またはユーザープロパティを指定して以下の機能を呼び出します。
LevelPlay.setSegment(mLPSegment);
サポートされるユーザーセグメントプロパティ
セグメントプロパティ | 型 | 制限 | 説明 |
|---|---|---|---|
| segmentName | String | 最大 32 文字の英数字 | LevelPlay アカウントのセグメントの指定された名前 |
| 支払い | Boolean | true または false | ユーザーがアプリケーション内課金に課金した場合は true、ユーザーがアプリケーション内課金に課金しなかった場合は false |
| iap_total | ダブル | 1-999999.99 | ユーザーがアプリケーション内課金に費やした金額の合計 |
| userCreationDate | ロング | 0 より小さい値にすることはできません | ユーザーがアプリケーションをインストールした日付(ミリ秒単位) |
| カスタムパラメーター | key=string, value=string | LevelPlay SDK は、最大 5 つのカスタムパラメーターと最大 32 文字の英数字をサポートします。 | サーバにディスパッチする追加データ |
ユーザーが属するセグメント名を受け取るには、以下のコールバックに登録します。コールバック文字列 (セグメント名) が空を返す場合、LevelPlay セグメントモジュールでユーザーに関連するセグメントが見つかりませんでした。
SegmentListener onSegmentReceived(文字列セグメント){}
リワードサーバーからサーバーへのコールバックのカスタムパラメーター
LevelPlay 報酬ベースの広告ユニットは、広告完了イベントの成功後にユーザーに付与する必要があるゲーム内報酬を通知するサーバー側のイベントをサポートします。詳細については、こちらを参照してください。
サーバーパラメーターに加えて、実行時のカスタムパラメーターをクライアント経由で共有できます。これを実装するには、setMetaData API を使用してカスタムパラメーターを LevelPlay_Rewarded_Server_Params に渡します。カスタムパラメーターは、セッションを通じて複数回更新され、以前の値がオーバーライドされます。
カスタム パラメータをリセットするには、LevelPlay_Rewarded_Server_Params を空の配列に設定します。
実装コード例
LevelPlay.setMetaData("LevelPlay_Rewarded_Server_Params", List.of("key1=value1", "key2=value2"));
その後、対応するコールバックを受け取ります。例:
http://www.mydomain.com/rewardsCallback?appUserId=[ユーザー ID]&ゲーム内報酬=[ゲーム内報酬]&eventId=[イベント ID]&itemName=[項目名]&custom_key1=値1&custom_key2=値2
Price Floor設定
フロア設定 API では、特定の広告単位に下限を設定できます。ユーザーごとに最低価格を設定することで、ターゲティングの効率を高め、待ち時間を削減し、広告パフォーマンスを最適化できます。
価格下限は広告オブジェクトの作成時に割り当てる必要があり、そのオブジェクトのその後のすべてのロードに適用されます。
ノート:Min SDK 8.9.0
プロパティ | 型 | 説明 |
|---|---|---|
| 入札フロア | double | 従来のインスタンスと入札者に適用される最小 eCPM を定義する米ドルの価格。 |
インタースティシャル広告の例
// Define a price floor configurationvar adConfig = new LevelPlayInterstitialAd.Config.Builder() .setBidFloor(1.23) // Set the price floor in USD .build();// Apply the configuration to an interstitial ad unitvar interstitialAd = new LevelPlayInterstitialAd("adUnitId", adConfig);
インタースティシャルの完全な実装は、こちらで利用できます。
リワード広告の例
// Define a price floor configurationval adConfig = LevelPlayRewardedAd.Config.Builder() .setBidFloor(1.23) // Set the price floor in USD .build()// Apply the configuration to a rewarded ad unitval rewardedAd = LevelPlayRewardedAd("adUnitId", adConfig)
リワード広告の完全実装は、こちらで利用できます。
バナー広告の例
// Define a price floor configurationvar adConfig = new LevelPlayBannerAd.Config.Builder() .setBidFloor(1.23) // Set the price floor in USD .build();// Apply the configuration to a banner ad unitvar bannerAd = new LevelPlayBannerAdView(context, "adUnitId", adConfig);
バナー広告の完全な実装は、こちらで利用できます。
LevelPlay SDK エラーコード
LevelPlay SDK は、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 | の呼び出し中の例外