lpw
2024-06-24 96fe7669fe8da0110590467e2e95ad88c0149112
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
//
//  GAMBannerView.h
//  Google Mobile Ads SDK
//
//  Copyright 2012 Google LLC. All rights reserved.
//
 
#import <GoogleMobileAds/GADAdLoader.h>
#import <GoogleMobileAds/GADAdLoaderDelegate.h>
#import <GoogleMobileAds/GADAppEventDelegate.h>
#import <GoogleMobileAds/GADBannerView.h>
#import <GoogleMobileAds/GADVideoController.h>
 
@class GAMBannerView;
 
/// The delegate of a GADAdLoader object must conform to this protocol to receive GAMBannerViews.
@protocol GAMBannerAdLoaderDelegate <GADAdLoaderDelegate>
 
/// Asks the delegate which banner ad sizes should be requested.
- (nonnull NSArray<NSValue *> *)validBannerSizesForAdLoader:(nonnull GADAdLoader *)adLoader;
 
/// Tells the delegate that a Google Ad Manager banner ad was received.
- (void)adLoader:(nonnull GADAdLoader *)adLoader
    didReceiveGAMBannerView:(nonnull GAMBannerView *)bannerView;
 
@end
 
/// The view that displays Ad Manager banner ads.
///
/// To request this ad type using GADAdLoader, you need to pass GADAdLoaderAdTypeGAMBanner (see
/// GADAdLoaderAdTypes.h) to the |adTypes| parameter in GADAdLoader's initializer method. If you
/// request this ad type, your delegate must conform to the GAMBannerAdLoaderDelegate protocol.
@interface GAMBannerView : GADBannerView
 
/// Required value created on the Ad Manager website. Create a new ad unit for every unique
/// placement of an ad in your application. Set this to the ID assigned for this placement. Ad units
/// are important for targeting and statistics.
///
/// Example Ad Manager ad unit ID: @"/6499/example/banner"
@property(nonatomic, copy, nullable) NSString *adUnitID;
 
/// Optional delegate that is notified when creatives send app events.
@property(nonatomic, weak, nullable) IBOutlet id<GADAppEventDelegate> appEventDelegate;
 
/// Optional delegate that is notified when creatives cause the banner to change size.
@property(nonatomic, weak, nullable) IBOutlet id<GADAdSizeDelegate> adSizeDelegate;
 
/// Optional array of NSValue encoded GADAdSize structs, specifying all valid sizes that are
/// appropriate for this slot. Never create your own GADAdSize directly. Use one of the predefined
/// standard ad sizes (such as GADAdSizeBanner), or create one using the GADAdSizeFromCGSize
/// method.
///
/// Example:
///
///   \code
///   NSArray *validSizes = @[
///     NSValueFromGADAdSize(GADAdSizeBanner),
///     NSValueFromGADAdSize(GADAdSizeLargeBanner)
///   ];
///
///   bannerView.validAdSizes = validSizes;
///   \endcode
@property(nonatomic, copy, nullable) NSArray<NSValue *> *validAdSizes;
 
/// Indicates that the publisher will record impressions manually when the ad becomes visible to the
/// user.
@property(nonatomic) BOOL enableManualImpressions;
 
/// Video controller for controlling video rendered by this ad view.
@property(nonatomic, readonly, nonnull) GADVideoController *videoController;
 
/// If you've set enableManualImpressions to YES, call this method when the ad is visible.
- (void)recordImpression;
 
/// Use this function to resize the banner view without launching a new ad request.
- (void)resize:(GADAdSize)size;
 
/// Sets options that configure ad loading.
///
/// @param adOptions An array of GADAdLoaderOptions objects. The array is deep copied and option
/// objects cannot be modified after calling this method.
- (void)setAdOptions:(nonnull NSArray<GADAdLoaderOptions *> *)adOptions;
 
@end