I'm trying to integrate native ads to my ios app. I'm successfully seeing the ads within my custom view but when i click the ad this message is printed in the console
Message when clicking ad:
<Google> The custom click gesture feature is not enabled for your AdMob account. Talk to your account manager to request this feature for your account. In the meantime, this method is a no-op.
Im not sure why because if i use a banner ad or an adaptive banner the ad is loaded and the click is working successfully.
Here is how i integrate the native ad:
In View did Load:
adLoaderTopNativeAd = GADAdLoader(adUnitID: PublicVars.adNativeTopPostDetailAdvancedID, rootViewController: self, adTypes: [ .native ], options: nil)
adLoaderTopNativeAd.delegate = self
adLoaderTopNativeAd.load(GADRequest())
Did Recive function:
var adLoaderTopNativeAd: GADAdLoader!
var nativeTopAd: GADNativeAd!
//MARK: Ad Loader Native Ad
func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
if adLoader == adLoaderTopNativeAd {
nativeTopAd = nativeAd
nativeAd.delegate = self
nativeTopAd.delegate = self
nativeTopAd.enableCustomClickGestures()
let description = nativeTopAd.description
let headline = nativeTopAd.headline
let body = nativeTopAd.body
let advertiser = nativeTopAd.advertiser
let callToAction = nativeTopAd.callToAction
let price = nativeTopAd.price
let store = nativeTopAd.store
let starRating = nativeTopAd.starRating
let extraAssets = nativeTopAd.extraAssets
let icon = nativeTopAd.icon
let hasVideo = nativeTopAd.mediaContent.hasVideoContent
let mainVideo = nativeTopAd.mediaContent.videoController
let mainImage = nativeTopAd.mediaContent.mainImage
let images = nativeTopAd.images
let mediaContent = nativeTopAd.mediaContent
let isCustomClickGestureEnabled = nativeTopAd.isCustomClickGestureEnabled
let isCustomMuteThisAdAvailable = nativeTopAd.isCustomMuteThisAdAvailable
let muteThisAdReasons = nativeTopAd.muteThisAdReasons
let paidEventHandler = nativeTopAd.paidEventHandler
nativeTopAdMediaImage.contentMode = .scaleAspectFit
nativeTopAdHeadlineLabel.text = "\(headline!)\n\(starRating) ⭐️ · \(store)\n\(price)"
nativeTopAdBodyLabel.text = "\(body!)"
nativeTopAdActionLabel.text = "\(callToAction!)"
nativeTopAdIconImage.image = icon?.image
nativeTopAdMediaImage.image = mainImage
// Set up click and impression tracking
//if nativeTopAd.isCustomClickGestureEnabled {
let adTapGesture = UITapGestureRecognizer(target: self, action: #selector(handleAdTap(_:)))
nativeTopAdBG.addGestureRecognizer(adTapGesture)
//}
}
}
//MARK: Handle Ad Tap
@objc func handleAdTap(_ sender: UITapGestureRecognizer) {
if let nativeAd = nativeTopAd {
nativeAd.recordCustomClickGesture()
// Handle click-related actions (e.g., opening a webpage)
}
}
I have also added these delegates:
GADAdLoaderDelegate, GADNativeAdLoaderDelegate, GADNativeAdDelegate
Anyway everything seems to be in place. I have searched everywhere and i cant find anything on what to do when getting the message: <Google> The custom click gesture feature is not enabled for your AdMob account. Talk to your account manager to request this feature for your account. In the meantime, this method is a no-op.
I dont have an account manager either and i cant find any setting at AdMob website to enable the custom click feature. I've also tried to send the AdMob Support a email but there is an error Something went wrong, please try again a very consistent error. This is my last hope if you know that this question has already been answerd before please send a link. Otherwise if you know the solution please share, any help would be greatly appreciated.
Things i have tried
I have tried to enable the custom click feature at AdMob website, no luck. I have also googled the issue alot nothing that helps has been in my search results. i have tried to ask chatGPT were it recommended me to enable the feature at Admob website or contact AdMob Support. AdMob Support does not work since there is an error for everytime you try to send an email to them. Then i have tried to use other methods in the code like:
nativeTopAd.registerClickConfirmingView(nativeTopAdMediaImage)
And also
nativeTopAd.register(nativeTopAdMediaImage, clickableAssetViews: [:], nonclickableAssetViews: [:])
With the same message printing in the console everytime:
Your account must be enabled to use this feature. Talk to your account manager to request this feature for your account. In the meantime, this method is a no-op.
Thanks for your time.