Używam Eclipse do tworzenia aplikacji na Androida i chcę zintegrować Admob, aby zarabiać pieniądze. Samouczek mówi, że powinienem obejrzeć LogCat, aby znaleźć identyfikator, ale gdzie on jest?
Kiedy uruchamiam się w trybie testowym lub w trybie rzeczywistym, czasami zaćmienie powiadomi, że Ads zwrócił, ale nie widać tego w emu ... czy ktoś może wyjaśnić?
Zaakceptowane odpowiedzi będą działać, jeśli testujesz tylko na emulatorze lub na kilku urządzeniach, ale jeśli testujesz na wielu urządzeniach, możesz potrzebować pewnych środków, aby proporcjonalnie dodać identyfikator uruchomionego urządzenia.
Poniższy kod programowo sprawi, że aktualnie działające urządzenie stanie się urządzeniem testowym Adview
Musisz użyć md5 identyfikatora Androida i musi to być wielkie litery. Oto kod md5, którego użyłem
EDYCJA: Najwyraźniej metoda MD5 nie jest idealna i zasugerowano wypróbowanie https://stackoverflow.com/a/21333739/2662474 Nie potrzebuję już tej funkcji, więc nie testowałem. Powodzenia!
źródło
com.google.android.gms.internal.cm.l(Context ctx)
które jest wewnętrzną zaciemnioną metodą (w wersji 4.0.30), która zwraca identyfikator, o którym mowaimport hashlib; hashlib.md5(android_id.lower()).hexdigest().upper()
. W ten sposób możesz po prostu pobrać aplikację, aby pokazać swój identyfikator Androida i wziąć MD5.Coś podobnego do Google Ads, z dokumentacji:
na przykład mój identyfikator urządzenia testowego wyświetlany w LogCat to
"B86BC9402A69B031A516BC57F7D3063F"
:źródło
Jeśli Twoja aplikacja jest w Sklepie Play i wyświetla aktywne reklamy - nie możesz używać rzeczywistych reklam do testowania - dodaj identyfikator urządzenia w kodzie, aby uzyskać reklamy testowe z AdMob na swoim prawdziwym urządzeniu. Nigdy nie używaj aktywnych reklam podczas programowania lub testowania.
Aby uzyskać prawdziwy identyfikator urządzenia w logcat,
Otwórz dowolną aplikację na swoim urządzeniu, która wyświetla reklamy na żywo z AdMob: na podłączonym urządzeniu, jeśli masz aplikację pobraną ze Sklepu Play (wyświetlającą reklamy na żywo), otwórz tę aplikację lub otwórz dowolną inną aplikację, która wyświetla reklamy AdMob na żywo. Twoje urządzenie powinno mieć połączenie z Internetem.
Przefiltruj logcat za pomocą „urządzenia”, jak pokazano poniżej, aby uzyskać urządzenie testowe
Przeczytaj testowanie reklam AdMob na urządzenie - identyfikatory urządzeń mogą ulec zmianie na bardziej
źródło
Aby uzyskać identyfikator urządzenia mieszającego
wewnątrz oncreate
następnie dodaj tę klasę do md5 ()
źródło
hexString.append(String.format("%02X", 0xFF & messageDigest[i]));
Twoja implementacja da niepoprawne dane wyjściowe dla wartości bajtów 15 lub mniejszych, ponieważ wiodące zero nie zostanie wyprowadzone.Jeśli wyświetlasz reklamy za pomocą układu XML i masz już „ads: testDevices =” w pliku XML układu, AdMob NIE wydrukuje komunikatu „Aby pobrać reklamy testowe na tym urządzeniu ...” w danych wyjściowych LogCat. Wyjmij to, a zobaczysz komunikat LogCat.
Oto fajny samouczek, jak znaleźć identyfikator urządzenia w LogCat: http://webhole.net/2011/12/02/android-sdk-tutorial-get-admob-test-device-id/
źródło
Jeśli testujesz swoją aplikację na rzeczywistym urządzeniu, możesz wypróbować tę małą aplikację na Androida, która podaje identyfikator urządzenia:
https://play.google.com/store/apps/details?id=pe.go_com.admobdeviceidfinder&hl=en
Otrzymasz zaszyfrowany identyfikator urządzenia bezpośrednio. Mam nadzieję że to pomoże.
źródło
Innym najłatwiejszym sposobem wyświetlania reklam testowych jest użycie identyfikatora urządzenia testowego dla banera, aby wyświetlić reklamy testowe AdMob dla wszystkich urządzeń . „ ca-app-pub-3940256099942544/6300978111 ”. Ten identyfikator reklam testowych AdMob został odnotowany w samouczku AdMob Google: link . Oto cytat z powyższego linku:
źródło
Jeśli nie dostaniesz go w logcat, po prostu umieść identyfikator urządzenia, załaduj reklamy i uruchom aplikację, a następnie przejdź do dziennika, który otrzymasz w ten sposób
I/Ads: Use AdRequest.Builder.addTestDevice("XXXXXXXXXXXXXXXXXXXXXXXXX") to get test ads on this device.
, umieść go i ponownie uruchom aplikację.źródło
Aby uzyskać identyfikator urządzenia, podłącz telefon do USB i otwórz logcat w Android Studio Użyj poniższego kodu (upewnij się, że masz włączone debugowanie USB w urządzeniu). Następnie otwórz dowolną aplikację (pobierz dowolną losową aplikację ze sklepu Play), która ma reklamę Google. W Logcat wpisz „set”, jak pokazano na obrazku. Identyfikator Twojego urządzenia jest wyróżniony na obrazie jako
setTestDeviceIds (Arrays.asList ("CC9DW7W7R4H0NM3LT9OLOF7455F8800D")) .
Użyj urządzenia testowego w swoim kodzie, jak pokazano
źródło
Mam kilka urządzeń, na których testowałem, i nie chciałem ręcznie pobierać DeviceID dla każdego z nich. Odpowiedzi tutaj, aby programowo uzyskać identyfikatory DeviceID, nie działały dla mnie (brakujące zera), co spowodowało, że zamiast reklam testowych były wyświetlane prawdziwe reklamy.
Umieszczam to w mojej klasie Application onCreate, a następnie ujawniam deviceId przy użyciu metody getter, aby można było uzyskać do niego dostęp w całym tekście.
I metoda MD5;
Następnie używam tego za każdym razem, gdy tworzę obiekt AdRequest:
źródło
Działa w ten sposób:
Po uruchomieniu aplikacji ... Idź do Logcat, wstaw Verbose w polu wyszukiwania AdRequest, aby urządzenie id wyświetlało donw.
.addTestDevice ("umieść tutaj identyfikator");
Mam nadzieję, że pomogłem;
źródło
Dodaj tę klasę do swojego projektu
Stosowanie:
źródło
aplikacja:
build.gradle
Twoja aktywność:
źródło