iOS
ADOPのためのAdKit: iOS¶
設定¶
-
XcodeプロジェクトのInfo.plistファイルに
GADApplicationIdentifier
キーを追加し、AdMobId値(ca-app-pub-XXXXX~YYYYY形式)をそのキーの値として追加します。また、BidmadAppKey
キーの値としてADOP APP_KEYを入力します。ADOP APP_KEYは、ADOP Insightにログイン後、アカウント管理 > マイ情報 > 詳細で見つけることができます。
GDPRの同意を管理する際に、UMPプロジェクトから設定を特定できます。
- iOS 14以降では、iOS 14の準備ガイドを参照して、Info.plistファイルにSKAdNetworkリストを追加します。
-
プロジェクトアプリのCocoaPods設定に以下を追加します:
4. 次のコマンドを実行してCocoaPodの設定を適用します。
Note
アプリを配布する際にプライバシー調査フォームを完成させるための情報については、プライバシー調査ガイドを参照してください。
使い方¶
ADOPでのテスト広告キー¶
ADOPが発行したテスト広告キーを使用する必要があります。AdMobではありません。
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"
AdKitを初期化する¶
AdKitの初期化を行います。
リセットを実行する際、欧州および英国(EEAおよびUK)地域にいる場合、GDPR同意ポップアップが自動的に表示されます。他の地域では、リセットが即座に実行されます。
- あなたのゲームがEEAおよびUK地域を対象としている場合、GDPR同意ポップアップがGDPRメッセージガイドに従って設定されていることを確認してください。
import AdKit
// Commercial
AdKit.InitializeWithShowGDPRConsent(appKey: appKey, vc: self, bLog: false, gdprTestDeviceId: nil)
// GDPR EEA test mode
AdKit.InitializeWithShowGDPRConsent(appKey: appKey, vc: self, bLog: true, gdprTestDeviceId: gdprTestDeviceId)
分析ログが発生した際に、ユーザーの追加情報を含めることができ、データはJSONObject型で渡されます。
let dict = Dictionary<String, Any> (dictionaryLiteral: ("level",1),("gold",100))
AdKit.SetAdditionalInfo(additionalInfo: dict)
リワードビデオタイプ¶
リワードビデオタイプの広告は、一定の時間ビデオを視聴したユーザーに報酬を与え、1回の広告を読み込むことができます。
// 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")
また、adPlacementInfo
は、成功した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")
また、adPlacementInfo
は、成功したLoad
の時点またはShow
を通じて広告を表示する際に設定される文字列として渡すことができます。
アダプティブバナータイプ¶
アダプティブバナータイプの広告は、画面上の特定の場所を占めるロールバナーの一種です。バナーの位置は、BannerPositionまたはyPos値で調整できます。 バナーの位置を調整するためにyPosを指定すると、バナーは画面の下部に配置され、その後指定した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()
// This example shows adjusting the banner position with specifiying the yPos value.
// 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")
// The position is adjusted following the yPos value.
adaptiveBanner?.setPosition(yPosition:yPos)
また、adPlacementInfo
は、成功した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 Developersを参照してください。