iOS向け広告品質SDKの統合
Ad 品質 SDK を iOS アプリケーションに統合して、広告のパフォーマンスを監視および分析し、キー化します。
読み終わるまでの所要時間 9 分最終更新 6日前
広告品質を使用すると、ユーザーに表示される広告コンテンツを監視および管理して、アプリケーションの目標に即した広告が表示されるようにし、ユーザー体験を向上させることができます。オーディエンスにとって関連性の高い魅力的な広告を配信して、収益の可能性を最大化しましょう。
前提条件
段階別ガイドに従って、LevelPlay プラットフォームでアプリケーションを構成します。
ステップ 1: アプリケーションに広告品質 SDK をインポート
CocoaPods
CocoaPodsは、Objective-CとSwiftの依存関係マネージャーであり、SDKのインテグレーション プロセスを自動化および合理化します。詳細については、『 CocoaPods Guide on Getting Started and Using CocoaPods 』を参照してください。
SDK を Cocoapods と統合するには、podfile に以下の行を入力します。
pod 'IronSourceAdQualitySDK','9.3.1'
ステップ 2: SDK を初期化する
- Unity LevelPlay プラットフォームにある Ironsource キー 品質 SDK を初期化します。
- アプリケーションのメインスレッド、または他の広告ネットワークSDKと同じスレッドに以下のコードを追加して、広告品質SDKを初期化します。
メインの ViewController の viewDidLoad メソッドに以下のコードを追加します。
#import "IronSourceAdQuality.h" @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; // Initialize [[IronSourceAdQuality getInstance] initializeWithAppKey:appKey]; } @end
ステップ 3 (任意):高度な SDK 初期化
インテグレーション設定をカスタマイズすることで、さらに多くの機能を利用できます。
- ユーザー ID:広告品質のデフォルト ID の代わりに独自のユーザー ID を使用する
- テストモード:広告品質 SDK インテグレーションをテストします (デフォルトは false)
- ログレベル:コードの問題をデバッグするログレベルを選択します (デフォルトは INFO)
ビルダーで以下のコードを使用して、設定オブジェクトを作成します。
ISAdQualityConfig *adQualityConfig = [ISAdQualityConfig config];
ユーザー ID
広告品質 SDK には、ユーザー ID を設定するための 2 つのオプションがあります。
- 独自のユーザー ID を使用し、初期化の前または中に追加します。
adQualityConfig.userId = userId;// The default user id is Ad Quality internal id.// The user id cannot be null and must be between 2 and 100 characters, otherwise it will be blocked.
- デフォルトのユーザー ID は、後で ID が設定されるように、広告品質 SDK を初期化した後に変更してください。
[[IronSourceAdQuality getInstance] changeUserId:userId];// The default user id is Ad Quality internal id.// The user id cannot be null and must be between 2 and 100 characters, otherwise it will be blocked.
テストモード
adQualityConfig.testMode = YES;// The default is NO - set to true only to test your Ad Quality integration
ログレベル
adQualityConfig.logLevel = IS_AD_QUALITY_LOG_LEVEL_INFO;// There are 5 different log levels:// IS_AD_QUALITY_LOG_LEVEL_ERROR,// IS_AD_QUALITY_LOG_LEVEL_WARNING,// IS_AD_QUALITY_LOG_LEVEL_INFO,// IS_AD_QUALITY_LOG_LEVEL_DEBUG,// IS_AD_QUALITY_LOG_LEVEL_VERBOSE// The default is IS_AD_QUALITY_LOG_LEVEL_INFO[[IronSourceAdQuality getInstance] initializeWithAppKey:appKey andConfig:adQualityConfig];
ステップ 4 (任意):SDK コールバックイベントの設定
iOS コールバックは、Ad Quality SDK が初期化されたのと同じ場所にある別のクラスに実装する必要があります。
ISAdQualityInitDelegate:
#import "IronSourceAdQuality.h"@インターフェース ViewController () :NSObject<ISAdQualityInitDelegate>@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; ISAdQualityConfig *config = [ISAdQualityConfig config]; [config setAdQualityInitDelegate:self]; // Initialize [[IronSourceAdQuality getInstance] initializeWithAppKey:appKey andConfig:config];}- (void)adQualitySdkInitSuccess { NSLog(@"adQualitySdkInitSuccess");}- (void)adQualitySdkInitFailed:(ISAdQualityInitError) error withMessage:(NSString *)message { NSLog(@"adQualitySdkInitFailed %u message: %@", error, message);}@end
ステップ 5 (任意):インプレッションレベルの広告収益を Ad Quality SDK にレポートする
広告品質SDK 7.2.0以降では、インプレッションレベルの広告収益レポートがサポートされます。
Ad Quality SDK でインプレッションレベルの広告収益をレポートするには、以下のコードスニペットを SDK インテグレーションに追加します。
ISAdQualityCustomMediationRevenue *customMediationRevenue = [[ISAdQualityCustomMediationRevenue alloc] init]; customMediationRevenue.mediationNetwork = IS_AD_QUALITY_MEDIATION_NETWORK_SELF_MEDIATED; customMediationRevenue.adType = IS_AD_QUALITY_AD_TYPE_REWARDED; customMediationRevenue.placement = "placement"; customMediationRevenue.revenue = 0.12; [[IronSourceAdQuality getInstance] sendCustomMediationRevenue:customMediationRevenue];
AdMob メディエーションを使用している場合は、次の手順に従います。
- 担当の AdMob アカウントマネージャーに、AdMob インプレッションレベル LTV (iLTV) を有効にするよう依頼します。
- Android 用または iOS 用の GMA SDK 8.12.0 以上を使用していることを確認し、さらにそのバージョンで iLTV がサポートされることを確認します。
- Ad Quality SDK インテグレーションに以下のコードスニペットを追加します。
GADRewardedAd* リワード広告;[GADRewardedAd loadWithAdUnitID:@"AD_UNIT_ID"request:requestcompletionHandler:^(GADRewardedAd *ad, NSError *error) { if (error) { NSLog(@"Rewarded ad failed to load with error: %@", [error localizedDescription]); return; } self.rewardedAd = ad; self.rewardedAd.paidEventHandler = ^void(GADAdValue *_Nonnull adValue){ ISAdQualityCustomMediationRevenue *customMediationRevenue = [[ISAdQualityCustomMediationRevenue alloc] init]; customMediationRevenue.mediationNetwork = IS_AD_QUALITY_MEDIATION_NETWORK_ADMOB; customMediationRevenue.adType = IS_AD_QUALITY_AD_TYPE_REWARDED; customMediationRevenue.placement = [rewardedAd adUnitID]; customMediationRevenue.revenue = adValue.value.doubleValue; [[IronSourceAdQuality getInstance] sendCustomMediationRevenue:customMediationRevenue]; }}];