Para ver como añadir la librería ver la parte 1 del tutorial
Lo primero de todo es añadir una actividad en el AndroidManifest.xml
<activity android:name="com.amazon.device.ads.AdActivity" android:configChanges="keyboardHidden|orientation|screenSize"/>
Y añadir los permisos necesarios
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
Y posteriormente hacer que nuestra clase implemente AdListener
implements AdListener
Creamos una propiedad para el anuncio de tipo AdLayout
private AdLayout adView;
Creamos una variable estática para almacenar la key de la aplicación y otra para que nos ayude a identificar los mensajes de login de nuestra aplicación
private static final String APP_KEY = "appkey"; // Reemplazar con la key de tu aplicación private static final String LOG_TAG = "prefijoLog";
Ahora ponemos esté código dentro del método oncreate, después del super.loadUrl, es el código que se encargará de crear y mostrar el anuncio
try { AdRegistration.setAppKey(APP_KEY); } catch (Exception e) { Log.e(LOG_TAG, "Exception thrown: " + e.toString()); return; } AdRegistration.enableTesting(true); // Poner a true para pruebas, cambiar a false antes de subir a la app store adView = new AdLayout(this); adView.setListener(this); LinearLayout layout=(LinearLayout)super.root; layout.addView(adView); AdTargetingOptions opt = new AdTargetingOptions().enableGeoLocation(true);//necesita permiso de GPS /** Si no queremos localizar al usuario podemos usar esta funcion ** AdTargetingOptions opt = new AdTargetingOptions(); **/ adView.loadAd(opt);
Y finalmente añadimos los métodos que debe tener nuestra clase por implementar AdListener
/** * Método que se llama al minimizar un anuncio que anteriormente se había expandido */ @Override public void onAdCollapsed(AdLayout view) { Log.d(LOG_TAG, "Ad collapsed."); } /** * Método que se llama cuando un anuncio falla al cargar. Lo podríamos usar para cargar un anuncio de admob al fallar el de amazon */ @Override public void onAdFailedToLoad(AdLayout view, AdError error) { Log.w(LOG_TAG, "Ad failed to load. Code: " + error.getCode() + ", Message: " + error.getMessage()); } /** * Método que se llama cuando un anuncio se muestra correctamente */ @Override public void onAdLoaded(AdLayout view, AdProperties adProperties) { Log.d(LOG_TAG, adProperties.getAdType().toString() + " Ad loaded successfully."); } /** * Método que se llama cuando un anuncio se expande */ @Override public void onAdExpanded(AdLayout view) { Log.d(LOG_TAG, "Ad expanded."); }
Cosas que no debemos olvidar:
- Añadir la actividad y los permisos al AndroidManifest.xml
- Poner nuestra propia key de la aplicación
- Quitar la linea de AdRegistration.enableTesting(true); o ponerla a false
Si quereis ver una aplicación con los anuncios en funcionamiento podeis ver mi Othello Classic
De momento mi experiencia no está siendo muy buena, solo estoy teniendo un relleno del 20%, pero es una opción a tener en cuenta frente a admob.
1 comentario en “Como usar los anuncios de amazon con phonegap (Android). Parte 2, mostrar los anuncios”