GoogleMobileAds Framework Reference

GADCustomNativeAd

@interface GADCustomNativeAd : NSObject

Custom native ad. To request this ad type, you need to pass GADAdLoaderAdTypeCustomNative (see GADAdLoaderAdTypes.h) to the |adTypes| parameter in GADAdLoader’s initializer method. If you request this ad type, your delegate must conform to the GADCustomNativeAdLoaderDelegate protocol.

  • The ad’s format ID.

    Declaration

    Swift

    var formatID: String { get }

    Objective-C

    @property (nonatomic, readonly, nonnull) NSString *formatID;
  • Array of available asset keys.

    Declaration

    Swift

    var availableAssetKeys: [String] { get }

    Objective-C

    @property (nonatomic, readonly, nonnull) NSArray<NSString *> *availableAssetKeys;
  • Custom click handler. Set this property only if this ad is configured with a custom click action, otherwise set it to nil. If this property is set to a non-nil value, the ad’s built-in click actions are ignored and |customClickHandler| is executed when a click on the asset is received.

    Declaration

    Swift

    var customClickHandler: GADNativeAdCustomClickHandler? { get set }

    Objective-C

    @property (copy, nullable) GADNativeAdCustomClickHandler customClickHandler;
  • The display ad measurement associated with this ad.

    Declaration

    Swift

    var displayAdMeasurement: GADDisplayAdMeasurement? { get }

    Objective-C

    @property (nonatomic, readonly, nullable) GADDisplayAdMeasurement *displayAdMeasurement;
  • Media content.

    Declaration

    Swift

    var mediaContent: GADMediaContent { get }

    Objective-C

    @property (nonatomic, readonly, nonnull) GADMediaContent *mediaContent;
  • Optional delegate to receive state change notifications.

    Declaration

    Swift

    weak var delegate: (any GADCustomNativeAdDelegate)? { get set }

    Objective-C

    @property (nonatomic, weak, nullable) id<GADCustomNativeAdDelegate> delegate;
  • Reference to a root view controller that is used by the ad to present full screen content after the user interacts with the ad. The root view controller is most commonly the view controller displaying the ad.

    Declaration

    Swift

    weak var rootViewController: UIViewController? { get set }

    Objective-C

    @property (nonatomic, weak, nullable) UIViewController *rootViewController;
  • Information about the ad response that returned the ad.

    Declaration

    Swift

    var responseInfo: GADResponseInfo { get }

    Objective-C

    @property (nonatomic, readonly, nonnull) GADResponseInfo *responseInfo;
  • Returns the native ad image corresponding to the specified key or nil if the image is not available.

    Declaration

    Swift

    func image(forKey key: String) -> GADNativeAdImage?

    Objective-C

    - (nullable GADNativeAdImage *)imageForKey:(nonnull NSString *)key;
  • Returns the string corresponding to the specified key or nil if the string is not available.

    Declaration

    Swift

    func string(forKey key: String) -> String?

    Objective-C

    - (nullable NSString *)stringForKey:(nonnull NSString *)key;
  • Call when the user clicks on the ad. Provide the asset key that best matches the asset the user interacted with. If this ad is configured with a custom click action, ensure the receiver’s customClickHandler property is set before calling this method.

    Declaration

    Swift

    func performClickOnAsset(withKey assetKey: String)

    Objective-C

    - (void)performClickOnAssetWithKey:(nonnull NSString *)assetKey;
  • Call when the ad is displayed on screen to the user. Can be called multiple times. Only the first impression is recorded.

    Declaration

    Swift

    func recordImpression()

    Objective-C

    - (void)recordImpression;