Google IMA与GMA的区别:iOS应用DFP视频广告接入疑问
Hey there, let's untangle this confusion around Google's ad tools for iOS video ads—totally get why it feels fuzzy at first!
First off, DFP (DoubleClick for Publishers) has officially rebranded to Google Ad Manager (GAM). It's not an SDK itself—it's Google's backend ad management platform for controlling your app's ad inventory, setting delivery rules, and connecting with ad demand sources.
When you search "DFP SDK iOS" and land on GMA docs, that's because the Google Mobile Ads (GMA) SDK is Google's official mobile ad integration toolkit. It's the bridge between your iOS app and the GAM platform, supporting standard ad formats like banners, interstitials, native ads, and basic video ads.
The Interactive Media Ads (IMA) SDK is a specialized extension within the GMA ecosystem, built exclusively for optimizing video ad scenarios.
| Aspect | GMA SDK | IMA SDK |
|---|---|---|
| Purpose | General-purpose mobile ad SDK covering all ad formats | Specialized SDK focused solely on video ad scenarios, optimized for video playback workflows |
| Video Ad Scenarios | Only supports simple standalone video ads (e.g., video interstitials, rewarded videos) with no integration with in-app video content | Supports full-range video ad placements: pre-roll, mid-roll, post-roll, pause ads, and ads embedded in video streams. Handles ad sequences, skip logic, and seamless transitions between ads and content |
| Industry Standards | Basic support for video ad standards | Full compliance with VAST, VPAID, VMAP standards, enabling advanced ad tracking and interactive features |
| Integration Dependency | Can be integrated independently | Requires the core GMA SDK as a dependency—it's a complementary tool to GMA |
Your goal is to add video ads that play before content or embed in your app's UI. Here's how to approach it:
Scenario 1: Standalone Video Ads (e.g., video interstitial before a content page loads)
The GMA SDK is all you need:
- Integrate the GMA SDK into your iOS project.
- Create a video ad unit in the GAM backend and get its Ad Unit ID.
- Use GMA's
GADInterstitialAdorGADRewardedAdto load the video ad, then trigger playback at the right moment (like right before your content page loads).
Scenario 2: Video Ads Linked to In-App Video Content (e.g., pre-roll ads before your app's video content plays)
You must use the IMA SDK. Follow these steps:
- First integrate the core GMA SDK components—IMA relies on it for basic ad request logic.
- Integrate the IMA iOS SDK and bind it to your video player (e.g., Apple's
AVPlayeror a custom player). - Create a video ad unit in the GAM backend, then configure your IMA ad request with the corresponding Ad Unit ID or ad request URL.
- Use the IMA SDK to send ad requests, and listen for callbacks for ad loading, playback, skips, and completion to sync ad playback with your content video (e.g., auto-start content after ad finishes, allow users to skip ads after a set time).
Google no longer maintains a separate "DFP SDK"—all mobile ad integrations are unified under the GMA SDK. IMA is the only choice if you need deep integration between video ads and your app's video content; GMA can't handle those complex scenarios.
内容的提问来源于stack exchange,提问作者richie




