本指南適用於整合廣告中繼資料與 Google Mobile Ads iOS SDK 的發布商。
必要條件
擷取廣告中繼資料
如要讓應用程式進一步瞭解放送的廣告,請將廣告設為自己的 GADAdMetadataDelegate
。然後,您可以在 GADAdMetadataDelegate
上導入 adMetadataDidChange:
方法,以監聽廣告中繼資料的變更。呼叫此委派後,請檢查廣告上的 adMetadata
屬性。
廣告載入後,或在載入廣告中繼資料後非同步變更時,系統就會呼叫 adMetadataDidChange:
。我們無法保證載入時會提供廣告中繼資料,因此建議您先等候這個回呼,再存取廣告的中繼資料。
以下程式碼範例說明如何擷取獎勵廣告的廣告中繼資料:
@interface ViewController () <GADFullScreenContentDelegate, GADAdMetadataDelegate>
@end
@implementation ViewController
- (void)loadRewardedAd {
*request = [ request];
[GADRewardedAd
loadWithAdUnitID:@"ca-app-pub-3940256099942544/4806952744"
request:request
completionHandler:^(GADRewardedAd *ad, NSError *error) {
if (error) {
NSLog(@"Rewarded ad failed to load with error: %@", [error localizedDescription]);
return;
}
self.rewardedAd = ad;
self.rewardedAd.fullScreenContentDelegate = self;
/// Set the ad to be the delegate of its ad metadata.
self.rewardedAd.adMetadataDelegate = self;
NSLog(@"Rewarded ad loaded.");
}];
}
/#pragma mark GADAdMetadataDelegate implementation
- (void)adMetadataDidChange:(id<GADAdMetadataProvider>)ad {
NSDictionary<NSString*, id> *adMetadata = _rewardedAd.adMetadata;
NSString *adId = adMetadata[@"AdId"];
}
擷取中繼資料後,您可以針對關注的鍵檢查套裝組合。不同類型的廣告可能有不同的廣告中繼資料鍵。VAST 影片廣告包含下列鍵:
鍵 | 類型 | 說明 |
---|---|---|
AdId |
字串 | 廣告 ID;如果沒有,則提供空白字串。 |
AdTitle |
字串 | 標題 (如未指定,則為空白)。 |
CreativeDurationMs |
整數 | 所選廣告素材的時間長度 (以毫秒為單位);如果是非線性廣告,則為 -1 。 |
TraffickingParameters |
字串 | 廣告投放參數,如果沒有的話,則會顯示空字串。 |
DealId |
字串 | 目前廣告的包裝函式鏈結中出現的第一個交易 ID,從頂端開始;如果無法取得這項資訊,則為空字串。 |
AdSystem |
字串 | 廣告的來源廣告伺服器;如果不適用,則為空白。 |
CreativeId |
字串 | 為廣告選取的廣告素材 ID;如果不適用,則為空白。 |
MediaURL |
字串 | 所選媒體的網址。 |
Wrappers |
陣列 |
陣列會在最內部的包裝函式廣告 (靠近內嵌廣告附近) 開始填入元素,從最外層的包裝函式廣告開始。陣列中的每個元素都是字典,包含下列鍵和值。
|