Inserire pubblicità Admob in una applicazione per Android

Pubblicato: 12 gennaio 2011 in Android, Programmazione
Tag:, ,

*La guida relativa alla versione di Admob 4.x è presente a questo indirizzo http://mariobuonomo.com/2011/04/29/google-admob-4-02-4-04-updated-code-android/*

Per chi non lo sapesse Admob è uno dei servizi più utilizzato per guadagnare attraverso la pubblicità con la propria applicazione!!

Per iniziare:

  • Per prima cosa bisogna registrarsi sul sito: http://www.admob.com/register/
  • Andare poi su crea sito/applicazione:  http://www.admob.com/my_sites/create_site?_cd=1 ed ovviamente cliccare su Android.
  • Compilate i campi Nome applicazione, indirizzo del market (si può anche lasciare vuoto), Categoria e Descrizione.
  • Andate su Gestisci Impostazioni dell’applicazione e segnatevi l’ID editore in alto a sinistra e cliccate su Ricevi codice editore per ottenere la libreria in formato jar da aggiungere alla vostra applicazione Android.

Scaricherete un file chiamato admob-sdk-android.zip, scompattatelo, all’interno ci sarà la libreria che ci serve: admob-sdk-android.jar.

Ora dobbiamo includere la libreria nel nostro progetto in Eclipse:

  • Creiamo una cartella chiamata “librerie” nel nostro progetto e copiamo all’interno la libreria admob-sdk-android.jar
  • Premiamo il pulsante desto sul progetto->proprietà-> Java Build Path-> Add Jars e selezioniamo la libreria appena copiata.

Ora nel manifest.xml aggiungiamo nel tag <application>:

<meta-data android:name=”ADMOB_PUBLISHER_ID” android:value=”a1496ced2842262″></meta-data>
<meta-data android:name=”ADMOB_ALLOW_LOCATION_FOR_ADS” android:value=”false”></meta-data>

In res/values creiamo attrs.xml fatto così:

<?xml version=”1.0″ encoding=”utf-8″?>
<resources>
<declare-styleable name=”com.admob.android.ads.AdView”>
<attr name=”backgroundColor” format=”color” />
<attr name=”primaryTextColor” format=”color” />
<attr name=”secondaryTextColor” format=”color” />
<attr name=”keywords” format=”string” />
<attr name=”refreshInterval” format=”integer” />
</declare-styleable>
</resources>

Ora nel layout xml di dove vogliamo inserire il banner inseriamo:

<com.admob.android.ads.AdView
android:id=”@+id/ad”
android:layout_width=”fill_parent”
android:layout_height=”wrap_content”
app:backgroundColor=”#000000″
app:primaryTextColor=”#FFFFFF”
app:secondaryTextColor=”#CCCCCC”
app:keywords=”MyAdMobApp” />

Ricordandoci di inserire dopo xmls:android la seguente riga:

xmlns:app=”http://schemas.android.com/apk/res/nome_package_applicazione

Abbiamo quasi finito, non ci resta che includere nel manifest una nuova activity che rappresenti il nostro banner pubblicitario:

<activity android:name=”com.admob.android.ads.AdMobActivity” android:theme=”@android:style/Theme.NoTitleBar.Fullscreen” android:configChanges=”orientation|keyboard|keyboardHidden”/>

commenti
  1. diego ha detto:

    grazie della dritta!!

  2. Andrea ha detto:

    dopo aver seguito tutti i passi ecco l’errore che ricevo:
    08-19 16:51:29.285: ERROR/AndroidRuntime(2477): Caused by: java.lang.ClassNotFoundException: com.admob.android.ads.AdView in loader dalvik.system.PathClassLoader@44dab808
    08-19 16:51:29.285: ERROR/AndroidRuntime(2477): at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243)
    08-19 16:51:29.285: ERROR/AndroidRuntime(2477): at java.lang.ClassLoader.loadClass(ClassLoader.java:573)
    08-19 16:51:29.285: ERROR/AndroidRuntime(2477): at java.lang.ClassLoader.loadClass(ClassLoader.java:532)
    08-19 16:51:29.285: ERROR/AndroidRuntime(2477): at android.view.LayoutInflater.createView(LayoutInflater.java:466)
    08-19 16:51:29.285: ERROR/AndroidRuntime(2477): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:565)

    Qualche idea del perchè?

  3. rossella morgante ha detto:

    Scusate, ma sono un pò confusa, dopo aver modificato i file (manifest, creato file attrs.xml ecc) vado a generare un altro aplk. Quindi devo aggiornare il file nel market giusto?

    • mariobuonomo ha detto:

      si certo ad ogni aggiornamento devi sostituire l’apk vecchio del market (ma questo vale per ogni modifica che fai al programma non solo se inserisci admob).. ricordati di incrementare il valore della versioncode e versionname nel manifest

  4. Nemina_2012 ha detto:

    Salve,
    prima di tutto complimenti! Desidero sapere ..ho creato un “app android” con “app inventor”..come faccio ad inserire pubblicita? posso utilizzare eclipse con un app fatta con app inventor? oppure quale altra forma di pubblicita potrei utilizzare oltre ad mob???
    grazie mille 😉

  5. Nemina_2012 ha detto:

    salve,
    non ho capito dove devo inserire xmlns:app=”http://schemas.android.com/apk/res/nome_package_applicazione ??? dove sarebbe xmls:android???
    grazie

  6. Nemina_2012 ha detto:

    Salve,
    nel file xml mi da errore nella riga <com.admob.android.ads.AdVie
    android:id="@+id/ad"

    grazie

Scrivi una risposta a Nemina_2012 Cancella risposta