#flutter #admob #googlemobileads
Вопрос:
Я использую google_mobile_ads и подтвердил свою учетную запись admob и создал рекламные блоки, всем им не менее 2 дней.
Но всякий раз, когда я меняю идентификатор объявления, в приведенном ниже коде объявления не отображаются. Я попытался создать apk-версию и установить ее на свой телефон, но реклама по-прежнему не отображается, и я еще не выпустил приложение.
void loadRewardedAd(){
RewardedAd.load(
adUnitId: RewardedAd.testAdUnitId,//when i put my ad id here it doesn't work
request: AdRequest(),
rewardedAdLoadCallback: RewardedAdLoadCallback(
onAdLoaded: (RewardedAd ad) {
rewardedAd = ad;
adLoadsNumber = 0;
},
onAdFailedToLoad: (LoadAdError error) {
adLoadsNumber ;
interStitialAd = null;
if (adLoadsNumber <= 2) {
loadAds();
}
},
));
}
void showRewardedAd(){
rewardedAd.fullScreenContentCallback = FullScreenContentCallback(
onAdShowedFullScreenContent: (RewardedAd ad) =>
print('$ad onAdShowedFullScreenContent.'),
onAdDismissedFullScreenContent: (RewardedAd ad) {
print('$ad onAdDismissedFullScreenContent.');
ad.dispose();
},
onAdFailedToShowFullScreenContent: (RewardedAd ad, AdError error) {
print('$ad onAdFailedToShowFullScreenContent: $error');
ad.dispose();
},
onAdImpression: (RewardedAd ad) => print('$ad impression occurred.'),
);
rewardedAd.show(
onUserEarnedReward: (RewardedAd ad, RewardItem rewardItem) {
this.gameEnded = false;
this.livesLeft.value = 3;
}
);
}
void loadAds() {
loadInterstitialAd();
loadRewardedAd();
}
void loadInterstitialAd(){
InterstitialAd.load(
adUnitId: InterstitialAd.testAdUnitId,//same with this one
request: AdRequest(),
adLoadCallback:
InterstitialAdLoadCallback(onAdLoaded: (InterstitialAd ad) {
interStitialAd = ad;
adLoadsNumber = 0;
}, onAdFailedToLoad: (LoadAdError e) {
adLoadsNumber ;
interStitialAd = null;
if (adLoadsNumber <= 2) {
loadInterstitialAd();
}
}));
}
void showInterstitialAd(bool isEnded) {
if (interStitialAd == null) {
return;
}
interStitialAd.fullScreenContentCallback = FullScreenContentCallback(
onAdDismissedFullScreenContent: (InterstitialAd ad) {
ad.dispose();
},
onAdFailedToShowFullScreenContent: (InterstitialAd ad, AdError error) {
ad.dispose();
},
);
interStitialAd.show();
}
Комментарии:
1. Я тоже подписал релиз apk
2. Если показываются тестовые объявления, то все в порядке, показ живых объявлений занимает довольно много времени.
3. хорошо, показываются тестовые объявления. Спасибо
Ответ №1:
Пожалуйста, проверьте, добавили ли вы подписанный APK SHA в консоль.
Комментарии:
1. Я подписал его с помощью хранилища ключей, используя этот docs.flutter.dev/deployment/ android , но я не подписал его с помощью sha, нужно ли это делать?