java - How to integrate Google Ads in Android application? -


i'm integrating google ads in android application. i'm implementing example of google ad mob, have getting example net. , have add external jar file of google-play-service_lib.jar , add element of

<activity android:name="com.google.ads.adactivity"               android:configchanges="keyboard|keyboardhidden|orientation"/> </application> 

and when run app application crashes. i'm getting error this:

= 04-15 12:16:33.713: w/ads(545): invalid unknown request error: cannot determine request type. ad unit id correct? there problem getting ad response. errorcode: 1 failed load ad: 1 04-15 12:16:04.713: w/googleplayservicesutil(545): google play services missing.

here code.

the code of banneradlistener

public class banneradlistener extends activity {   /** ad unit id*/   private static final string ad_unit_id = "insert_your_ad_unit_id_here";    /** log tag. */   private static final string log_tag = "banneradlistener";    /** view show ad. */   private adview adview;    /** called when activity first created. */   @override   public void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.main);      // create ad.     adview = new adview(this);     adview.setadsize(adsize.banner);     adview.setadunitid(ad_unit_id);      // set adlistener.     adview.setadlistener(new adlistener() {       /** called when ad clicked , return application. */       @override       public void onadclosed() {         log.d(log_tag, "onadclosed");         toast.maketext(banneradlistener.this, "onadclosed", toast.length_short).show();       }        /** called when ad failed load. */       @override       public void onadfailedtoload(int error) {         string message = "onadfailedtoload: " + geterrorreason(error);         log.d(log_tag, message);         toast.maketext(banneradlistener.this, message, toast.length_short).show();       }        /**        * called when ad clicked , going start new activity        * leave application (e.g. breaking out browser or maps        * application).        */       @override       public void onadleftapplication() {         log.d(log_tag, "onadleftapplication");         toast.maketext(banneradlistener.this, "onadleftapplication", toast.length_short).show();       }        /**        * called when activity created in front of app (e.g.        * interstitial shown, or ad clicked , launches new activity).        */       @override       public void onadopened() {         log.d(log_tag, "onadopened");         toast.maketext(banneradlistener.this, "onadopened", toast.length_short).show();       }        /** called when ad loaded. */       @override       public void onadloaded() {         log.d(log_tag, "onadloaded");         toast.maketext(banneradlistener.this, "onadloaded", toast.length_short).show();       }     });         // add adview view hierarchy.     linearlayout layout = (linearlayout) findviewbyid(r.id.linearlayout);     layout.addview(adview);      // create ad request. check logcat output hashed device id     // test ads on physical device.     adrequest adrequest = new adrequest.builder()         .addtestdevice(adrequest.device_id_emulator)         .addtestdevice("insert_your_hashed_device_id_here")         .build();      // start loading ad in background.     adview.loadad(adrequest);   }    @override   public void onresume() {     super.onresume();     if (adview != null) {       adview.resume();     }   }    @override   public void onpause() {     if (adview != null) {       adview.pause();     }     super.onpause();   }    /** called before activity destroyed. */   @override   public void ondestroy() {     if (adview != null) {       // destroy adview.       adview.destroy();     }     super.ondestroy();   }    /** gets string error reason error code. */   private string geterrorreason(int errorcode) {     string errorreason = "";     switch(errorcode) {       case adrequest.error_code_internal_error:         errorreason = "internal error";         break;       case adrequest.error_code_invalid_request:         errorreason = "invalid request";         break;       case adrequest.error_code_network_error:         errorreason = "network error";         break;       case adrequest.error_code_no_fill:         errorreason = "no fill";         break;     }     return errorreason;   }  } 

here manifest file

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"           package="com.google.example.gms.ads.banneradlistener"           android:versioncode="1"           android:versionname="1.0">     <uses-sdk android:minsdkversion="9"               android:targetsdkversion="18" />     <uses-permission android:name="android.permission.access_network_state"/>     <uses-permission android:name="android.permission.internet"/>      <application android:icon="@drawable/icon" android:label="@string/app_name">         <activity android:name=".banneradlistener"                   android:label="@string/app_name">             <intent-filter>                 <action android:name="android.intent.action.main" />                 <category android:name="android.intent.category.launcher" />             </intent-filter>         </activity>          <activity android:name="com.google.android.gms.ads.adactivity"           android:configchanges="keyboard|keyboardhidden|orientation|screenlayout|uimode|screensize|smallestscreensize"/>     <meta-data android:name="com.google.android.gms.version"                android:value="@integer/google_play_services_version" />     </application>  </manifest> 

and log cat information here.

04-15 12:16:04.473: d/dalvikvm(545): dexopt: couldn't find field landroid/content/res/configuration;.smallestscreenwidthdp 04-15 12:16:04.502: w/dalvikvm(545): vfy: unable resolve instance field 21 04-15 12:16:04.503: d/dalvikvm(545): vfy: replacing opcode 0x52 @ 0x0012 04-15 12:16:04.503: d/dalvikvm(545): vfy: dead code 0x0014-0018 in lcom/google/android/gms/common/googleplayservicesutil;.b (landroid/content/res/resources;)z 04-15 12:16:04.534: e/dalvikvm(545): not find class 'android.support.v4.app.fragmentactivity', referenced method com.google.android.gms.common.googleplayservicesutil.showerrordialogfragment 04-15 12:16:04.534: w/dalvikvm(545): vfy: unable resolve instanceof 132 (landroid/support/v4/app/fragmentactivity;) in lcom/google/android/gms/common/googleplayservicesutil; 04-15 12:16:04.543: d/dalvikvm(545): vfy: replacing opcode 0x20 @ 0x0008 04-15 12:16:04.563: e/dalvikvm(545): not find class 'android.support.v4.app.fragmentactivity', referenced method com.google.android.gms.common.googleplayservicesutil.showerrordialogfragment 04-15 12:16:04.563: w/dalvikvm(545): vfy: unable resolve check-cast 132 (landroid/support/v4/app/fragmentactivity;) in lcom/google/android/gms/common/googleplayservicesutil; 04-15 12:16:04.563: d/dalvikvm(545): vfy: replacing opcode 0x1f @ 0x000c 04-15 12:16:04.563: i/dalvikvm(545): not find method android.app.activity.getfragmentmanager, referenced method com.google.android.gms.common.googleplayservicesutil.showerrordialogfragment 04-15 12:16:04.563: w/dalvikvm(545): vfy: unable resolve virtual method 9: landroid/app/activity;.getfragmentmanager ()landroid/app/fragmentmanager; 04-15 12:16:04.563: d/dalvikvm(545): vfy: replacing opcode 0x6e @ 0x0023 04-15 12:16:04.563: d/dalvikvm(545): vfy: dead code 0x000e-001c in lcom/google/android/gms/common/googleplayservicesutil;.showerrordialogfragment (ilandroid/app/activity;ilandroid/content/dialoginterface$oncancellistener;)z 04-15 12:16:04.563: d/dalvikvm(545): vfy: dead code 0x0026-0030 in lcom/google/android/gms/common/googleplayservicesutil;.showerrordialogfragment (ilandroid/app/activity;ilandroid/content/dialoginterface$oncancellistener;)z 04-15 12:16:04.713: w/googleplayservicesutil(545): google play services missing. 04-15 12:16:05.428: i/dalvikvm(545): total arena pages jit: 11 04-15 12:16:05.428: i/dalvikvm(545): total arena pages jit: 12 04-15 12:16:05.562: d/dalvikvm(545): dexopt: --- begin 'ads-1292075482.jar' (bootstrap=0) --- 04-15 12:16:07.143: d/dalvikvm(545): dexopt: --- end 'ads-1292075482.jar' (success) --- 04-15 12:16:07.165: d/dalvikvm(545): dex prep '/data/data/com.google.example.gms.ads.banneradlistener/cache/ads-1292075482.jar': unzip in 14ms, rewrite 1622ms 04-15 12:16:07.655: i/ads(545): use adrequest.builder.addtestdevice("b3eeabb8ee11c2be770b684d95219ecb") test ads on device. 04-15 12:16:07.674: i/ads(545): starting ad request. 04-15 12:16:18.945: w/googleplayservicesutil(545): google play services missing. 04-15 12:16:18.980: e/googleplayservicesutil(545): googleplayservices not available due error 1 04-15 12:16:21.044: d/dalvikvm(545): gc_external_alloc freed 343k, 49% free 2925k/5703k, external 2032k/2137k, paused 171ms 04-15 12:16:21.044: d/webviewglue(545): nativedestroy view: 0x36ab88 04-15 12:16:33.713: w/ads(545): invalid unknown request error: cannot determine request type. ad unit id correct? 04-15 12:16:33.763: w/ads(545): there problem getting ad response. errorcode: 1 04-15 12:16:33.763: w/ads(545): failed load ad: 1 04-15 12:16:33.763: d/banneradlistener(545): onadfailedtoload: invalid request 

you need provide your adunitid.

  private static final string ad_unit_id = "insert_your_ad_unit_id_here"; 

is not valid adunitid. go admob dashboard , adunitid , plug code above.


Comments

Popular posts from this blog

Why can rails not find a route created by a helper? -

javascript - jquery or ashx not working -

opencv - DataType<cv::detail::deriv_type>::depth what is it used for -