Ustawiam reklamę w mojej aplikacji na Androida za pomocą DoubleClick i nie mogę wyświetlić ostatecznej reklamy. Czy ktoś może mi pomóc?
Gdy testuję reklamę, dodając „.addTestDevice („ xxx ... ”)”, pojawia się reklama testowa, ale po usunięciu tej linii pojawia się następujący błąd:
W / Ads: brak wypełnienia z serwera reklam
W / Ads: Nie udało się załadować reklamy: 3
Ustawiam swoją reklamę w ten sposób:
PublisherAdRequest adRequest = new PublisherAdRequest.Builder().build();
mPublisherAdView.loadAd(adRequest);
A mój widok wydawcy wygląda tak:
<com.google.android.gms.ads.doubleclick.PublisherAdView
android:id="@+id/pronostics_ad"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
ads:adSize="BANNER"
ads:adUnitId="@string/ad_unit_pronostic">
</com.google.android.gms.ads.doubleclick.PublisherAdView>
Co się stało?
Dzięki z góry za odpowiedzi.
Odpowiedzi:
Zgodnie z dokumentacją otrzymujesz następujący kod błędu:
Na podstawie posta onFailedToReceiveAd - Żądanie reklamy powiodło się, ale żadna reklama nie została zwrócona z powodu braku zasobów reklamowych podczas korzystania z admob z adwhirl :
źródło
/6499/example/banner
Jest jedna opcja, która pomogła w naszym przypadku. Jak @blizzard wspomniał w ustawieniach aplikacji w Google Developer Console, istnieje sekcja o nazwie „Ceny i dystrybucja”. W tej sekcji znajduje się pole wyboru „ZAWIERA REKLAMY”. W naszym przypadku był wyłączony. Po włączeniu pomyślnie otrzymaliśmy reklamy.
źródło
Wystąpił ten sam błąd w mojej aplikacji. Uruchomiłem aplikację w konfiguracji debugowania. Problem został rozwiązany, gdy tylko uruchomiłem nową wersję mojej aplikacji na tym samym urządzeniu. W Android Studio po prostu przejdź do Build -> Generate Signed APK i wybierz konfigurację wydania. Następnie zainstaluj wersję .apk na swoim urządzeniu. W konfiguracji debugowania możesz również sprawdzić, czy wyświetlają się reklamy testowe , dodając AdRequest.Builder.addTestDevice („TWOJE URZĄDZENIE TESTOWE”). Jeśli wyświetlanie reklam jest w porządku, oznacza to, że potrzebujesz tylko konfiguracji wersji.
źródło
Jedna nowa i zaktualizowana odpowiedź: wiele aplikacji, które zostały usunięte w październiku (2018 r.) Z powodu braku Polityki prywatności, nie może otrzymywać reklam po ich powrocie do Sklepu Play. Musisz użyć tego formularza, aby poprosić o „zresetowanie” reklam w tej aplikacji. https://support.google.com/admob/contact/appeal_policy_violation
Kilka dni zajęło mi uświadomienie sobie i znalezienie odpowiedzi. Mamy nadzieję, że odzyskasz swoje reklamy.
źródło
Oznacza to, że kod jest poprawny, ale z powodu mniejszej liczby żądań do serwera reklamy nie są widoczne. Aby sprawdzić Test ADS, powinieneś umieścić kod w pętli na jakiś czas i musisz wysłać wiele żądań, aby Twój admob otrzymał wiele żądań i natychmiast załadował reklamy.
Dodaj poniższy kod
Ponownie uruchom aplikację wielokrotnie.
Usuń pętlę po rozpoczęciu otrzymywania reklam .
źródło
To jest proste OBEJŚCIE (brak rozwiązania):
Możesz zainstalować zapośredniczenie, takie jak InMobi: https://developers.google.com/admob/android/mediation/inmobi
W ten sposób, jeśli z jakiegokolwiek powodu AdMob nie wyświetla Ci reklam, możesz nadal wyświetlać je z innych sieci reklamowych.
źródło
Nie opublikowałem jeszcze wersji mojej aplikacji z reklamami.
Widziałem kod błędu 3: ERROR_CODE_NO_FILL po przełączeniu się z emulatorów z wersją debugowania na rzeczywiste urządzenie z wersją wydania (instalowane za pomocą poleceń powłoki adb).
Czekałem ponad 12 godzin i mogłem zobaczyć żądania reklam w portalu AdMob, ale bez dopasowań (współczynnik dopasowania 0%). Poszedłem do
Play Console > Store Presence > Pricing & distribution
i włączył przycisk opcjiContains ads
doYes, it has ads
. Próbowałem nawet przesłać pakiet aplikacji (bez publikowania) do Konsoli Play. Żadne z nich nie działało.W różnych artykułach pomocy AdMob (w tym link poniżej) wspomina się, że jeśli widzisz reklamy testowe (reklamy z etykietą „Reklama testowa”), oznacza to, że kod działa, a prawdziwe reklamy powinny działać zgodnie z oczekiwaniami (po utworzeniu zasobów reklamowych) .
Mając to na uwadze, opublikowałem moją aplikację w Sklepie Play, a gdy aktualizacja została uruchomiona, pobrałem ją za pośrednictwem aplikacji Sklep Play na moim prawdziwym telefonie, a reklamy ładowały się bez problemu, a mój współczynnik dopasowania wynosi teraz 66 % w AdMob. Z artykułu z najczęściej zadawanymi pytaniami dotyczącymi AdMob wynika, że zazwyczaj zajmuje to kilka godzin, a wyświetlanie reklam mogło zająć do 24 godzin.
Źródło: https://support.google.com/admob/answer/2993019?hl=en
źródło
Opcja 1 : Przejdź do Ustawienia-> szukaj Resetuj identyfikator reklamowy -> kliknij Resetuj identyfikator reklamowy -> OK . Powinieneś zacząć otrzymywać reklamy już teraz
Brak opcji wyszukiwania? Wypróbuj opcję 2
Opcja 2 : Wybierz Ustawienia-> Google-> Reklamy-> Zresetuj identyfikator reklamowy-> OK
Brak opcji Google w Ustawieniach? Wypróbuj opcję 3
Opcja 3 : Poszukaj Ustawień Google (NIE USTAWIEŃ) -> Reklamy-> Resetuj identyfikator wyświetlania reklam
źródło
Nie zapomnij dodać metod płatności w Google AdMod. To był mój problem z „Kodem błędu 3”. W każdym razie, gdy Twoje konto Google AdMod będzie gotowe do wyświetlania reklam (dla testowanego urządzenia lub prawdziwych użytkowników), wyślą Ci e-mail, że Twoje konto jest zweryfikowane i gotowe do pracy! Po tym liście wszystko powinno działać dobrze.
źródło
Zostawię to tutaj, na wypadek, gdyby dla kogoś zadziałało. Po wypróbowaniu wszystkich poprawek wymienionych na wszystkich forach i postach, co zadziałało, to po prostu użycie
AdRequest
obiektu globalnego . Używałbym tego samego obiektu do wywoływanialoadAd
każdegoadView
z nichActivity
. Widziałem, że ma tendencję do ładowania tej samej reklamy na każdym z nich,AdView
niezależnie od aktywności, ale przynajmniej teraz dostaję reklamy.źródło
Jeśli opublikowana aplikacja nie ma konta admob, a jej ustawienia w Google Developer Console (zwane „Cenami i dystrybucją”) „ZAWIERA REKLAMY” nie są zaznaczone. Zawsze programuj z identyfikatorem testu z wyjściem logcat.
źródło
W nowej wersji AdMob UŻYJ tego:
// Załaduj wcześniej adView
Jeśli reklamy ładują się na emulator, co oznacza, że zwracają reklamy testowe, powinno to oznaczać, że nie ma nic złego w Twoim kodzie. Czy ładują również reklamy testowe na Twoim telefonie?
Jeśli możesz zobaczyć reklamy testowe na emulatorze i urządzeniach testowych, zwykle oznacza to po prostu, że AdMob (zakładając, że korzystasz z AdMob) nie może zwrócić reklamy z powodu braku zasobów reklamowych. W takim przypadku, patrząc na Logcat, powinieneś zobaczyć wiersz W / Ads: Failed to load: 3 .
To, co powinieneś zrobić, to podłączyć telefon z Androidem do komputera, a następnie w Android Studio kliknąć Logcat, aw lewym górnym rogu powinieneś zobaczyć kilka urządzeń do wyboru. Wybierz swój telefon, jeśli jest na liście (powinien być). Logcat wydrukuje teraz wszystko, co drukuje Twój telefon. Na pasku filtrów wpisz reklamy, aby odfiltrować treści, których nie potrzebujesz.
Następnie otwórz aplikację w telefonie i sprawdź logcat. Upewnij się, że Twoje urządzenie nie jest uważane za urządzenie testowe. Jeśli widzisz W / Ads: Failed to load: 3 , oznacza to, że problem leży po stronie AdMob, a nie Ciebie.
Jeśli tego nie mówi, a mówi coś innego, to oczywiście nie wiem.
źródło
Ten błąd może wynikać ze zbyt wielu powodów. Spróbuj najpierw z testAds ca-app-pub id, aby uniknąć problemów z kontem admob.
Sprawdź, czy rozszerzasz AppCompatActivity w swoim mainActivity, w moim przypadku to był problem
Sprawdź również ponownie wszystkie te kroki https://developers.google.com/admob/android/quick-start?hl=en-419#import_the_mobile_ads_sdk
źródło
Jeśli błąd będzie się powtarzał, ostatnią próbą jest utworzenie nowego miejsca docelowego w admob. To działa dla mnie. Bez zmiany niczego (poza ciągiem identyfikatora miejsca docelowego) inne reklamy w kodzie zaczną się wyświetlać.
źródło
Popełniłem najgłupszy błąd. Identyfikator aplikacji został przekazany
MobileAds.initialize
z jednej aplikacji i użyty identyfikator miejsca docelowegoloadAd
z innej aplikacji AdMob.Po poprawieniu identyfikatora miejsca docelowego wszyscy zaczęli działać.
źródło
Dla mnie powodem było to, że jedno urządzenie, Xiaomi Mi 9 po prostu już nie działało i nie wyświetlało reklam, więc wyciągnąłem tablet i nie widziałem żadnych błędów i wyświetlało reklamy w wydaniu.
źródło
Może istnieć jeden z powodów, dla których mogłeś utworzyć reklamę z konsoli adMob, klikając tak, że Twoja aplikacja jest już w sklepie playstore i podając adres URL aplikacji na żywo. W takim przypadku nie będziesz w stanie wyświetlać reklam w żadnym innym projekcie który ma różnicowy identyfikator pakietu niż ten na żywo (nawet nie testuje reklamy). Musisz zaimplementować reklamy w rzeczywistym projekcie zawierającym ten sam identyfikator pakietu, aw innym przypadku reklama nie załaduje się ad: 3.
Dzięki! Miłego kodowania!
źródło
Może to pomaga innym, otrzymałem to powiadomienie na moim koncie AdSense.
źródło
Oznacza: żądanie reklamy powiodło się, ale żadna reklama nie została zwrócona z powodu braku zasobów reklamowych.
Tak więc w moim przypadku skomentowałem
keywords:
właściwość, aby załadować wszystkie typy reklam. Teraz moja reklama ładuje się prawidłowo.źródło
To działa dla mnie
Ustawienia-> Google-> Reklamy-> Zresetuj identyfikator reklamowy-> OK
Ale w niektórych przypadkach reklamy są automatycznie wyświetlane po przesłaniu do Sklepu Play.
źródło
Sprawdź i upewnij się, że nie połączyłeś dwóch kont z Adsense, jak to zrobiłem omyłkowo w moim przypadku.
jeśli dopiero tworzysz konto admob na 24 godziny i spróbuj ponownie
źródło
Mój problem dotyczył płatności. Odświeżyłem swoją metodę płatności i to mi pomogło.
źródło
Otrzymałem ten błąd we Flutterze. Sprawdź konsolę debugowania i znajdź to polecenie
Use.RequestConfiguration.Builder (). SetTestDeviceIds (Arrays.asList („”)
I skopiuj identyfikator urządzenia z listy do MobileAdTargetingInfo testDevices i zadziała !!!
źródło