Autore Topic: Admob e View  (Letto 1099 volte)

Offline sergioandroid

  • Nuovo arrivato
  • *
  • Post: 49
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Desire
Admob e View
« il: 18 Giugno 2011, 19:15:08 CEST »
0
Ho realizzato una piccola applicazioncina per puro divertimento e stavo pianificando di inserirla gratuitamente sul market.

Ho effettuato la registrazione su Admob per l'inserimento della pubblicità, e seguendo un tutorial(ben fatto di marcoDuff) ho visto che basta inserire un codice nel main.xml(piu qualche piccolo accorgimento), essendo una view.

Il fatto è che io nella mia applicazione(per integrare multitouch e tutto) non uso piu il file main.xml, ma una classe Panel che estende una View.
Quindi ho nell'attività principale:  setContentView(_panel);

Posso aggirare il problema e inserire ugualmente il codice? In che maniera?

Sergio

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:Admob e View
« Risposta #1 il: 20 Giugno 2011, 10:48:00 CEST »
0
Aggiungi l'oggetto AdView al tuo pannello invece di aggiungerlo all'xml.

Google AdMob Ads Android Fundamentals - Google AdMob Ads SDK - Google Code

Offline AndroidLab

  • Nuovo arrivato
  • *
  • Post: 11
  • Respect: 0
    • http://it.linkedin.com/in/sandrotroncone
    • Mostra profilo
    • AndroidLab
Re:Admob e View
« Risposta #2 il: 20 Giugno 2011, 11:10:03 CEST »
0
Potresti anche creare l'admob in modo programmatico e inserirlo da codice nella View.
Le API sono cambiate un po, da poco, dai un'occhiata qui Google AdMob Ads Android Fundamentals - Google AdMob Ads SDK - Google Code
Entra nell'AndroidLab!

Offline sergioandroid

  • Nuovo arrivato
  • *
  • Post: 49
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Desire
Re:Admob e View
« Risposta #3 il: 21 Giugno 2011, 14:52:17 CEST »
0
Grazie a tutti per le risposte...ho controllato il link e ho eseguito alla lettera il tutto, lavorando non sulla view, ma sull'activity principale e il manifest xml..

sull 'activity ho importato la libreria google.ads e aggiunto una view tramite adview:

Codice (Java): [Seleziona]
 AdView adView = new AdView(this, AdSize.BANNER, idunit);
 LinearLayout layout = (LinearLayout)findViewById(R.id.linearLayout);    
 layout.addView(adView);    
 adView.loadAd(new AdRequest());

nel manifest ho chiaramente dichiarato l'activity dato i permessi per l'uso della rete..

Codice (XML): [Seleziona]
<activity android:name="com.google.ads.AdActivity"
     android:configChanges="keyboard|keyboardHidden|orientation"/>    
   
  </application>
  <uses-sdk  android:minSdkVersion="7" />
  <uses-permission android:name="android.permission.INTERNET"/>
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>


tutta via, il banner non è visualizzato... ci sarà da aspettare? ho la sensazione che sto dimenticando qualcosa

Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:Admob e View
« Risposta #4 il: 21 Giugno 2011, 16:16:20 CEST »
0
Codice: [Seleziona]
logcat Ads:d *:s

Offline sergioandroid

  • Nuovo arrivato
  • *
  • Post: 49
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Desire
Re:Admob e View
« Risposta #5 il: 21 Giugno 2011, 16:40:29 CEST »
0
il problema l'ho individuato, non è mancanza di comunicazione con admob, ma qualcosa a che fare col main.xml

ho un frame layout (in cui è contenuta la view della mia applicazione) e un linear layout(dove ho messo il banner).

Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"      
   android:layout_width="fill_parent" android:layout_height="fill_parent">  
 
 <FrameLayout
  android:id="@+id/layout01"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent"  
 />  
 <LinearLayout
  android:id="@+id/linearLayout"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content" />
 
</LinearLayout>

Solamente se elimino il FrameLayout , viene visualizzato il banner assegnato a LinearLayout..perchè accade questo?




Offline MarcoDuff

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1073
  • Respect: +202
    • Google+
    • marcoduff
    • Mostra profilo
    • MarcoDuff's Blog
  • Dispositivo Android:
    Samsung Galaxy Nexus
  • Play Store ID:
    MarcoDuff
  • Sistema operativo:
    Windows 7
Re:Admob e View
« Risposta #6 il: 21 Giugno 2011, 16:42:57 CEST »
0
Metti wrap_content nel android:layout_height del FrameLayout.

Offline sergioandroid

  • Nuovo arrivato
  • *
  • Post: 49
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Desire
Re:Admob e View
« Risposta #7 il: 21 Giugno 2011, 17:16:56 CEST »
0
grazie marco, in effetti il wrap content permette la visualizzazione.. tuttavia il problema del frameLayout è legato all'activity principale.

Codice (Java): [Seleziona]
 
setContentView(R.layout.main);  
//........qui
FrameLayout fL1 = (FrameLayout) findViewById(R.id.layout01); //se disattivo questa riga e la prossima,
fL1.addView(new PanelBong(getApplicationContext())); //posso visualizzare il banner di admob

//edit: PanelBong è una classe che estende View  
   
AdView adView = new AdView(this, AdSize.BANNER, idunit);    
LinearLayout layout = (LinearLayout)findViewById(R.id.linearLayout);      
layout.addView(adView);  

AdRequest request = new AdRequest();
request.setTesting(true);     // faccio un test sull'emulatore
adView.loadAd(request);

è come se il background del framelayout(che è naturalmente un file jpg) va in primo piano non permettendo al banner di visualizzarsi.
Continuo a lavorarci, non è tanto riuscire per il banner ma è capirne il motivo
« Ultima modifica: 21 Giugno 2011, 17:19:24 CEST da sergioandroid »

Offline sergioandroid

  • Nuovo arrivato
  • *
  • Post: 49
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Desire
Re:Admob e View
« Risposta #8 il: 21 Giugno 2011, 18:38:15 CEST »
0
ecco quello che accade, prima e dopo aver messo il banner..
il linearlayout del banner spinge in basso il frame layout, in cui è contenuta l'applicazione.. non esiste un modo per sovrapporlo senza far slittare nulla...?
ho usato un orientamemnto landscape, e il banner di per se è orribile, lasciando uno spazietto vuoto sulla destra in risoluzioni alte






Offline Zappescu

  • Utente junior
  • **
  • Post: 110
  • Respect: +7
    • Mostra profilo
    • Tic Tank Toe
  • Dispositivo Android:
    HTC Magic
  • Play Store ID:
    Zapmobilegames
  • Sistema operativo:
    Win XP
Re:Admob e View
« Risposta #9 il: 22 Giugno 2011, 12:23:30 CEST »
0
Dalla mia esperienza, il banner non si sovrappone mai a quanto hai sotto, io non ci sono riuscito :)
Mi sposta sempre la View in basso.
Zapmobilegames website
Tic Tank Toe: a new approach for a classic game

Offline sergioandroid

  • Nuovo arrivato
  • *
  • Post: 49
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC Desire
Re:Admob e View
« Risposta #10 il: 22 Giugno 2011, 15:41:56 CEST »
0
ho risolto, utilizzando un relative layout, con dentro un linear layout e un framelayout
adesso è perfetto:)