iOS
Hive AdKit for ADOP: iOS¶
設定¶
Warning
AdKit 1.5.1バージョンからは、従来使用していたAppKeyがAppDomainに変更されました。AppDomainは従来のAppKeyと互換性がないため、Hive AdKitの初期化には新しいAppDomainを発行していただく必要があります。 AppDomainに関する情報はテックラボプラットフォーム事業部運営チームにお問い合わせください。
-
XcodeプロジェクトのInfo.plistファイルを以下のように修正します。
GADApplicationIdentifier
キーを追加- AdMobId値(ca-app-pub-XXXXX~YYYYY形式)をキー値として入力
BidmadAppDomain
キー値としてADOP APP_DOMAINを入力
-
iOS 14 以上では Preparing for iOS 14 ガイドを参考にして ADOPの SKAdNetwork リストを Info.plist ファイルに追加します。
-
プロジェクトアプリのCocoaPodsの設定に次の内容を追加します。
-
CocoaPodの設定を適用します。
Note
アプリ配布時に個人情報アンケートフォームを作成するための情報を得るには、プライバシー調査ガイドを参照してください。
適用ガイド¶
ADOP テスト広告キー¶
AdMobではなくADOPが発行した広告キーを使用する必要があります。
let rewardVideoUnitId: String = "29e1ef67-98d2-47b3-9fa2-9192327dd75d"
let InterstitialAdUnitId: String = "228b95a9-6f42-46d8-a40d-60f17f751eb1"
let AdaptiveBannerAdUnitId: String = "1c3e3085-333f-45af-8427-2810c26a72fc"
let AppOpenAdUnitId: String = "0ddd6401-0f19-49ee-b1f9-63e910f92e77"
Hive AdKit初期化¶
ADOP広告を初期化するにはadopAppDomain
を必ず発行する必要があります。発行したadopAppDomain
はADOP広告初期化メソッドの引数として使用する必要があります。
Warning
AdKit 1.5.1バージョンからは、従来使用していたAppKeyがAppDomainに変更されました。AppKeyは従来のAppDomainと互換性がないため、初期化のためにはAppDomainを新たに発行していただく必要があります。 AppDomainに関する情報はテックラボプラットフォーム事業部運営チームにお問い合わせください。
Note
初期化を実行する際、ヨーロッパおよびイギリス(EEA & UK)地域の場合、GDPR同意ポップアップが自動的に表示されます。それ以外の地域では、すぐに初期化が実行されます。
Warning
Hive SDKを使用する場合は、Hive AdKitの初期化を完了した後にAuthV4.setup
を実行する必要があります。ATT(アプリ追跡透明性)同意通知を表示した後にGDPR同意画面が表示されると、Appleのアプリ審査でアプリが拒否される可能性があります。
- ゲームがヨーロッパおよびイギリス(EEA & UK)地域をターゲットにしている場合、GDPR同意ポップアップがGDPRメッセージ作成ガイドに従って設定されていることを確認してください。
import AdKit
// 상용
AdKit.InitializeWithShowGDPRConsent(appDomain: appDomain, vc: self, bLog: false, gdprTestDeviceId: nil) { consentState in
/*
동의 = 1, 비동의 = 0, 알수없음 = -1, 필요없음 = -2
초기화 완료 콜백으로 GDPR 동의 상태 결과 값 consentState가 전달됩니다. 결과값에 따른 별도 처리가 필요하지 않습니다.
*/
print("InitializeWithShowGDPRConsent consentState : \(consentState)")
}
// GDPR EEA 테스트모드
AdKit.InitializeWithShowGDPRConsent(appDomain: appDomain, vc: self, bLog: true, gdprTestDeviceId: gdprTestDeviceId) { consentState in
/*
동의 = 1, 비동의 = 0, 알수없음 = -1, 필요없음 = -2
초기화 완료 콜백으로 GDPR 동의 상태 결과 값 consentState가 전달됩니다. 결과값에 따른 별도 처리가 필요하지 않습니다.
*/
print("InitializeWithShowGDPRConsent consentState : \(consentState)")
}
リワードビデオタイプ広告¶
一定時間以上視聴すると報酬が与えられる報酬型広告です。一度に一つの広告のみをロードできます。
// RewardVideo Instance Create
var rewardVideo:RewardVideo? = nil
rewardVideo = RewardVideo.initialize(vc: self, adUnitId: rewardVideoUnitId, eventHandler: self)
// RewardVideo Load
rewardVideo?.LoadAd(adPlacementInfo: "Native-RewardVideo-Load")
// RewardVideo Show
rewardVideo?.Show(adPlacementInfo: "Native-RewardVideo-Show")
広告位置データを含めて伝えることができます。 Load
成功時点と Show
を通じて表示される時点に設定された文字列を伝えます。
インタースティシャルタイプ広告¶
画面全体を占める全面広告です。
// Interstitial Instance Create
var interstitialAd:Interstitial? = nil
interstitialAd = Interstitial.initialize(vc: self, adUnitId: InterstitialAdUnitId, eventHandler: self)
// Interstitial Load
interstitialAd?.LoadAd(adPlacementInfo: "Native-Interstitial-Load")
// Interstitial Show
interstitialAd?.Show(adPlacementInfo: "Native-Interstitial-Show")
広告位置データを含めて伝えることができます。 Load
成功時点と Show
を通じて表示される時点に設定された文字列を伝えます。
アダプティブバナータイプ広告¶
画面の一部を占めるロールバナーです。BannerPosition値または特定のyPos値を入力してバナー位置を調整できます。 yPos値を入力してバナー位置を調整する際、バナー位置はBottom整列状態で指定したyPos値だけ上に移動します。
// Create AdaptiveBanner Instance
var adaptiveBanner:AdaptiveBanner? = nil
// Initialize AdaptiveBanner Instance at the Top of View
adaptiveBanner = AdaptiveBanner.initialize(vc: self, adUnitId: AdaptiveBannerAdUnitId, bannerPosition: BannerPosition.Top, eventHandler: self)
// Initialize AdaptiveBanner Instance at the Bottom of View
adaptiveBanner = AdaptiveBanner.initialize(vc: self, adUnitId: AdaptiveBannerAdUnitId, bannerPosition: BannerPosition.Bottom, eventHandler: self)
// Load AdaptiveBanner
adaptiveBanner?.LoadAd(adPlacementInfo: "Native-AdaptiveBanner-Load")
// Destroy AdaptiveBanner
adaptiveBanner?.Destroy()
// yPos 값을 지정하여 사용하는 예제입니다.
// Banner Instance Create
var adaptiveBanner: AdaptiveBanner? = null
adaptiveBanner = AdaptiveBanner.initialize(vc: self, adUnitId: AdaptiveBannerAdUnitId, yPos: yPos, eventHandler: self)
// Load AdaptiveBanner
adaptiveBanner?.LoadAd(adPlacementInfo: "Native-AdaptiveBanner-Load")
// yPos값에 따라 위치 변경
adaptiveBanner?.setPosition(yPosition:yPos)
広告位置データを含めて伝えることができます。 Load
成功時点と Show
を通じて表示される時点に設定された文字列を伝えます。
AppOpen タイプ広告¶
アプリの状態がバックグラウンドからフォアグラウンドに変更されるときに広告を表示するアプリオープン広告です。
// Create AppOpenAd Instance
var appOpen: AppOpen? = nil
appOpen = AppOpen.initialize(vc: self, adUnitId: AppOpenAdUnitId, eventHandler: self, adPlacementInfo: "Native-AppOpen-LoadInfo")
// Automatically load & show AppOpenAd when the app comes to the foreground
appOpen?.LoadAd(adPlacementInfo: "Native-AppOpen-LoadInfo")
// Destroy AppOpenAd
appOpen?.Destroy()
テスト広告¶
開発中には、テスト広告をクリックしても広告主に費用が請求されないように設定することが重要です。テストモードでない状態で広告を過度にクリックすると、無効な活動としてアカウントが報告され、広告の受信がブロックされる可能性があります。テスト広告の利用方法は、Google 開発者サイトで確認できます。