コンパニオン広告のサポートを追加
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
プラットフォームを選択:
HTML5
Android
iOS
このガイドは、iOS IMA 実装にコンパニオン広告を追加することに関心をお持ちのパブリッシャー様を対象としています。
前提条件
- IMA SDK が統合された iOS アプリケーション。
- コンパニオン広告を返すように設定された広告タグ。
役立つ入門ガイド
アプリに IMA SDK を実装する必要がある場合は、スタートガイドをご覧ください。
コンパニオン広告をアプリに追加する
コンパニオンの UIView を作成する
コンパニオンをリクエストする前に、レイアウト内にコンパニオン用のスペースを作成する必要があります。ストーリーボードで、ビューを ViewController
にドラッグ&ドロップし、コンパニオン広告のサイズに合わせます。次に、コンパニオン スロットが実装内の変数に関連付けられていることを確認します(この例では companionView という変数を使用しています)。次のスクリーンショットでは、薄いグレーのビューがコンパニオン広告ビューです。
IMACompanionAdSlot を作成する
次のステップでは、ビューから IMACompanionAdSlot オブジェクトをビルドします。IMA SDK は、ビューの高さと幅に一致するディメンションを持つ VAST レスポンスのコンパニオンでコンパニオン広告スロットを設定します。IMA SDK は、Fluid サイズのコンパニオンの使用にも対応しています。
ViewController.h
@property(nonatomic, weak) IBOutlet UIView *companionView;
ViewController.m
self.companionSlot =
[[IMACompanionAdSlot alloc] initWithView:self.companionView
width:self.companionView.frame.size.width
height:self.companionView.frame.size.height];
コンパニオン広告スロットを広告コンテナに渡す
最後に、コンパニオン スロットの配列を IMAAdDisplayContainer
コンストラクタに渡して、このコンパニオン スロットが存在することを SDK に知らせる必要があります。
ViewController.m
return [[IMAAdDisplayContainer alloc] initWithAdContainer:self.videoView
viewController:self
companionSlots:@[ self.companionSlot ]];
これで操作は完了です。これで、コンパニオン広告が表示されるようになりました。
Fluid コンパニオン広告を表示する
IMA で、Fluid サイズのコンパニオン広告がサポートされるようになりました。これらのコンパニオン広告は、広告スロットのサイズに合わせてサイズ変更できます。親ビューの幅いっぱいに広がり、コンパニオンのコンテンツに合わせて高さを調整します。コンパニオン広告のサイズは、アド マネージャーの Fluid
コンパニオン サイズを使用して設定します。この値を設定する場所については、次の画像をご覧ください。
流動的なコンパニオンに対応するように iOS アプリを更新する
view
パラメータのみを使用して IMACompanionAdSlot
を初期化することで、流動的なコンパニオン スロットを宣言できます。width
と height
は除外します。
ViewController.m
self.companionSlot =
[[IMACompanionAdSlot alloc] initWithView:self.companionView];
よくある質問
- ガイドに沿って設定しましたが、コンパニオン広告が表示されません。必要な対策
- まず、タグが実際にコンパニオンを返していることを確認します。これを行うには、ウェブブラウザでタグを開き、CompanionAds タグを探します。この場合は、返されるコンパニオンのサイズが、表示しようとしている UIView のサイズと同じであることを確認してください。
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-08-31 UTC。
[null,null,["最終更新日 2025-08-31 UTC。"],[[["\u003cp\u003eThis guide helps iOS publishers integrate companion ads using the IMA SDK.\u003c/p\u003e\n"],["\u003cp\u003eYou need an iOS app with the IMA SDK and an ad tag returning companion ads to get started.\u003c/p\u003e\n"],["\u003cp\u003eCreate a UIView for the companion ad and an IMACompanionAdSlot tied to it.\u003c/p\u003e\n"],["\u003cp\u003eInform the SDK about the companion slot by passing it to the IMAAdDisplayContainer.\u003c/p\u003e\n"],["\u003cp\u003eFluid companion ads can be implemented for automatic resizing to fit content.\u003c/p\u003e\n"]]],[],null,["Select platform: [HTML5](/interactive-media-ads/docs/sdks/html5/client-side/companions \"View this page for the HTML5 platform docs.\") [Android](/interactive-media-ads/docs/sdks/android/client-side/companions \"View this page for the Android platform docs.\") [iOS](/interactive-media-ads/docs/sdks/ios/client-side/companions \"View this page for the iOS platform docs.\")\n\nThis guide is intended for publishers interested in adding companion ads to their iOS IMA implementation.\n\nPrerequisites\n\n- iOS Application with the IMA SDK integrated.\n- An ad tag configured to return a companion ad.\n - If you need a sample, check out our [FAQ](/interactive-media-ads/docs/sdks/ios/client-side/faq#4).\n\nHelpful primers\n\nIf you still need to implement the IMA SDK in your app, check out our [Get Started guide](/interactive-media-ads/docs/sdks/ios/client-side).\n\nAdd companion ads to your app\n\nCreate a UIView for your companion\n\nBefore requesting a companion, you need to create a space for it in your layout. In your storyboard, drag and drop a View onto your `ViewController` and size it to your companion ad. Then, make sure your companion slot is tied to a variable in your implementation (this example uses a variable called companionView). In the screenshot below, the light gray view is the companion ad view:\n\nCreate an IMACompanionAdSlot\n\nThe next step is to build an IMACompanionAdSlot object from your view. The IMA SDK\npopulates the companion ad slot with any companions from the VAST response that have dimensions\nmatching the view's height and width. The IMA SDK also supports using\n[fluid sized companions](/interactive-media-ads/docs/sdks/ios/client-side/companions#display-fluid-companion-ads).\n**ViewController.h** \n\n```transact-sql\n@property(nonatomic, weak) IBOutlet UIView *companionView;\n```\n**ViewController.m** \n\n```objective-c\nself.companionSlot =\n [[IMACompanionAdSlot alloc] initWithView:self.companionView\n width:self.companionView.frame.size.width\n height:self.companionView.frame.size.height];\n```\n\nPass the companion ad slot to your ad container\n\nLastly, you need to let the SDK know that this companion slot exists by passing an array of your companion slots to the `IMAAdDisplayContainer` constructor:\n**ViewController.m** \n\n```objective-c\nreturn [[IMAAdDisplayContainer alloc] initWithAdContainer:self.videoView\n viewController:self\n companionSlots:@[ self.companionSlot ]];\n```\n\nThat's all there is to it! Your application is now displaying companion ads.\n\nDisplay fluid companion ads\n\nIMA now supports fluid companion ads. These companions ads can resize to match the size of\nthe ad slot. They fill 100% of the width of parent view, then resize their height to fit the\ncompanion's content. They're set by using the `Fluid` companion size in Ad Manager.\nSee the following image for where to set this value.\n\nUpdate iOS apps for fluid companions\n\nYou can declare a fluid companion slot by initiating the\n[`IMACompanionAdSlot`](/interactive-media-ads/docs/sdks/ios/client-side/reference/Classes/IMACompanionAdSlot#-initwithview:)\nwith only the `view` parameter; excluding `width` and\n`height`.\n**ViewController.m** \n\n```objective-c\nself.companionSlot =\n [[IMACompanionAdSlot alloc] initWithView:self.companionView];\n```\n\nFAQ\n\nI followed the guide, but I'm not seeing companion ads. What should I do?\n: First, check to make sure your tag really is returning companions. To do this, open the tag in a web browser and look for a CompanionAds tag. If you see that, check to make sure the size of the companion being returned is the same size as the UIView in which you're trying to display it."]]