I've implemented CMP "a certified consent management platform (CMP)".according to admob request, I followed google implementation here: But I am still getting error from admob console "Some ad requests on your inventory from the EEA, the UK, or Switzerland are missing a TC string"
Main activity code as below:
googleMobileAdsConsentManager =
GoogleMobileAdsConsentManager.getInstance(getApplicationContext());
googleMobileAdsConsentManager.gatherConsent(
this,
consentError -> {
if (consentError != null) {
// Consent not obtained in current session.
}
if (googleMobileAdsConsentManager.canRequestAds()) {
initializeMobileAdsSdk();
}
if (googleMobileAdsConsentManager.isPrivacyOptionsRequired()) {
// Regenerate the options menu to include a privacy setting.
invalidateOptionsMenu();
}
});
// This sample attempts to load ads using consent obtained in the previous session.
if (googleMobileAdsConsentManager.canRequestAds()) {
initializeMobileAdsSdk();
}
Anny suggestion?
I've implemented CMP "a certified consent management platform (CMP)".according to admob request, I followed google implementation here: But I am still getting error from admob console "Some ad requests on your inventory from the EEA, the UK, or Switzerland are missing a TC string"
Main activity code as below:
googleMobileAdsConsentManager =
GoogleMobileAdsConsentManager.getInstance(getApplicationContext());
googleMobileAdsConsentManager.gatherConsent(
this,
consentError -> {
if (consentError != null) {
// Consent not obtained in current session.
}
if (googleMobileAdsConsentManager.canRequestAds()) {
initializeMobileAdsSdk();
}
if (googleMobileAdsConsentManager.isPrivacyOptionsRequired()) {
// Regenerate the options menu to include a privacy setting.
invalidateOptionsMenu();
}
});
// This sample attempts to load ads using consent obtained in the previous session.
if (googleMobileAdsConsentManager.canRequestAds()) {
initializeMobileAdsSdk();
}
Anny suggestion?
Share Improve this question asked Nov 18, 2024 at 14:05 صلي علي محمد - Atef Faroukصلي علي محمد - Atef Farouk 4,2972 gold badges37 silver badges56 bronze badges1 Answer
Reset to default 0After user grants or declines the Ads Personalisation request a key is stored in Shared preferences Automatically.
Shared preference Key name :- IABTCF_TCString
String tcString;
SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(this);
tcString = sp.getString("IABTCF_TCString", "Key not found");
Pass in AdMob
AdRequest adRequest = new AdRequest.Builder()
.addNetworkExtrasBundle(NativeAd.class, createAdMobExtras(tcString)) // Passing TC string
.build();
private Bundle createAdMobExtras(String tcString) {
Bundle extras = new Bundle();
extras.putString("tcString", tcString); // Pass the TC string using the correct key
return extras;
}