Solo estoy tratando de ejecutar AdMob y he probado diferentes ejemplos de código de "trabajo" desde aquí. Ninguno de ellos funciona.No ejecute AdMob en el emulador (android 2.2)
En la actividad que tengo:
alcrear()
AdView ad = (AdView) findViewById(R.id.ad);
AdRequest r = new AdRequest();
r.addTestDevice("X3XFX518X7DE1FD879XA5XXAX1AX8BXX"); //no clue why this string
ad.loadAd(r);
En la definición de vista he insertado el siguiente (y sí en lugar de myPubID no es en realidad mi verdadero Identificación PUB):
<com.google.ads.AdView
android:id="@+id/ad"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
ads:adUnitId="<myPubID>"
ads:adSize="BANNER"/>
Todo lo que obtengo es una pantalla negra durante 1 segundo.
log Siguiendo (logcat) se imprime durante la ejecución
08-09 10:45:03.527: INFO/ActivityManager(59): Start proc de.syrtec.android.bogloid for activity de.syrtec.android.bogloid/.StartSeite: pid=4402 uid=10043 gids={3003}
08-09 10:45:04.887: ERROR/Ads(4402): Could not get currentAdManager.
08-09 10:45:05.397: WARN/InputManagerService(59): Window already focused, ignoring focus gain of: [email protected]
08-09 10:45:05.567: INFO/Ads(4402): To get test ads on this device, call adRequest.addTestDevice(AdRequest.TEST_EMULATOR);
08-09 10:45:06.159: INFO/Ads(4402): adRequestUrlHtml: <html><head><script src="http://www.gstatic.com/afma/sdk-core-v40.js"></script><script>AFMA_buildAdURL({"preqs":0,"u_sd":1.5,"slotname":"********;</script></head><body></body></html>
08-09 10:45:07.528: WARN/webcore(4402): Can't get the viewWidth after the first layout
08-09 10:45:07.848: INFO/Ads(4402): Received ad url: <"url": "http://r.admob.com:80/ad_source.php?preqs=0&u_sd=1.5&slotname=*****: "null">
08-09 10:45:08.809: DEBUG/webviewglue(4402): nativeDestroy view: 0x2bbb30
08-09 10:45:08.818: INFO/Ads(4402): onFailedToReceiveAd(Ad request successful, but no ad returned due to lack of ad inventory.)
08-09 10:45:11.168: DEBUG/dalvikvm(3148): GC_EXPLICIT freed 32 objects/1640 bytes in 131ms
08-09 10:45:16.237: DEBUG/dalvikvm(272): GC_EXPLICIT freed 195 objects/12168 bytes in 137ms
utilizo GoogleAdMobAdsSdk-4.1.1.jar y Android 2.2 en emulador.
En mi cuenta de AdMob no hay filtro y AdSense está activado.
También probé por instanciando AdView y agregarlo a la rootlayout con: (en referencia a http://code.google.com/mobile/ads/docs/android/fundamentals.html)
AdView adView = new AdView(this, AdSize.BANNER, "PUB_ID");
LinearLayout layout = (LinearLayout)findViewById(R.id.mainLayout);
layout.addView(adView);
adView.loadAd(new AdRequest());
y tiene el mismo comportamiento con el siguiente registro:
08-09 10:49:18.367: INFO/ActivityManager(59): Start proc de.syrtec.android.bogloid for activity de.syrtec.android.bogloid/.StartSeite: pid=4543 uid=10043 gids={3003}
08-09 10:49:19.297: ERROR/Ads(4543): Could not get currentAdManager.
08-09 10:49:19.797: WARN/ActivityManager(59): Activity pause timeout for HistoryRecord{44fe4350 de.syrtec.android.bogloid/.StartSeite}
08-09 10:49:20.067: INFO/Ads(4543): To get test ads on this device, call adRequest.addTestDevice(AdRequest.TEST_EMULATOR);
08-09 10:49:20.379: INFO/Ads(4543): adRequestUrlHtml: <html><head><script src="http://www.gstatic.com/afma/sdk-core-v40.js"></script*****;</script></head><body></body></html>
08-09 10:49:20.397: WARN/InputManagerService(59): Window already focused, ignoring focus gain of: [email protected]
08-09 10:49:22.737: WARN/webcore(4543): Can't get the viewWidth after the first layout
08-09 10:49:22.957: INFO/Ads(4543): Received ad url: <"url": "http://r.admob.com:80/ad_source.php?preqs=0&u_sd=1.5&slotname=***** "null">
08-09 10:49:24.038: DEBUG/dalvikvm(4543): GC_FOR_MALLOC freed 3826 objects/234984 bytes in 154ms
08-09 10:49:24.058: DEBUG/webviewglue(4543): nativeDestroy view: 0x2c5320
08-09 10:49:24.058: INFO/Ads(4543): onFailedToReceiveAd(Ad request successful, but no ad returned due to lack of ad inventory.)
08-09 10:49:24.078: DEBUG/webviewglue(4543): nativeDestroy view: 0x2b81d0
¿Alguien tiene una pista?
Hmm ... muy interesante. ¿Es este tu proyecto o hay más código? Primero, elimine su re.addTestDevice (Adrequest.TEST_EMULATOR); si usa la fila re.setTesting (true), no es necesario. ¿Intentó hacer otro proyecto en Eclipse también, o es este el primero? Probablemente, el problema no sea con el código, sino con el Eclipse. – Zwiebel
Gracias :-) ... ahora aparece el anuncio de prueba imprimiendo "¡Correcto! Ahora está listo para viajar a través de la aplicación Galaxy" Entonces, ¿cómo proceder con anuncios reales? lo haría así: 1. Retire la re.setTesting (verdadero) 2. Publicar mi aplicación el mercado de las aplicaciones aplicación 3. eslabón de AdMob a la URL real de la aplicación mercado real es todavía algo faltante o incorrecto? –
Finalmente: D ¿Cuál fue el problema? ¿Solo borraste el re.addTestDevice? Sí, primero debe borrar la fila re.setTesting (true) de su proyecto y luego publicarla. Creo que no necesita la url real del mercado real, solo necesita escribir el nombre de su paquete para el ejemplo que se mostró en el sitio del admob. Estoy feliz de poder ayudarte;) – Zwiebel