我有一个完整的应用程序,我尝试添加admob。
我获得了发布商ID,我已将其添加到清单文件中。当我在设备中运行时,该应用程序在所有其他活动中正常工作。但是,当我移动到放置了admob广告的活动时,我的应用程序崩溃了,在logcat中它显示以下错误:
logcat中显示的主要错误如下:
04-06 20:22:30.627:ERROR / AndroidRuntime(2339): java.lang.RuntimeException:无法启动活动 ComponentInfo {com.mnn.image0114 / com.menteon.speedimage0114.ResultPage}: android.view.InflateException:二进制XML文件行#8:错误 膨胀类com.admob.ads.AdView
04-06 20:22:30.627:ERROR / AndroidRuntime(2339):引起: android.view.InflateException:二进制XML文件行#8:错误 膨胀类com.admob.ads.AdView
04-06 20:22:30.627:ERROR / AndroidRuntime(2339):引起: java.lang.ClassNotFoundException:com.admob.ads.AdView在loader中 dalvik.system.PathClassLoader@44ccc270
如何解决此错误?请帮帮我。
答案 0 :(得分:8)
我遇到了同样的问题,我按照这里的说明修复了它: NoClassDefFoundError when GoogleAnalyticsTracker.getInstance() 似乎ADT的新版本17要求从项目内的“libs”文件夹导入库。所以我刚刚创建了“libs”文件夹,在那里导入我的库,然后在项目的构建路径中设置它们(基本上按照上面链接中的说明)。它修复了我使用admob和分析代码时遇到的两个问题。
答案 1 :(得分:5)
如果您使用的是最新的AdMob jar,则需要使用com.google.ads.AdView
。在Sdk 4.04中肯定是这样。
话虽如此,我没有将AdView直接放入XML中,而是使用以下代码将广告放入我的XML中的LinearLayout中 -
adView = new AdView(this, AdSize.BANNER, MY_ID);
LinearLayout layout = (LinearLayout) findViewById(R.id.adMob);
layout.addView(adView);
AdRequest adRequest = new AdRequest();
adRequest.setTesting(GlobalData.DebugBuild);
adView.loadAd(adRequest);
答案 2 :(得分:2)
为了解决这个问题,我创建了一个名为/ libs的文件夹,并将GoogleAdMobAdsSdk-6.0.1.jar复制到其中。像魅力一样工作。
答案 3 :(得分:1)
我有这样的经验,让应用程序崩溃并显示诸如此类的消息 - “错误膨胀类com.admob.ads.AdView”。做一些研究和测试我得出以下XML属性来显示AdView;
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="@drawable/bg1"
android:orientation="vertical" >
<TableRow
android:id="@+id/tableRow2"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<com.google.ads.AdView
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
android:id="@+id/ad"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
ads:adSize="SMART_BANNER"
ads:adUnitId="738a44d913034b9f"
/>
</TableRow>
<TableRow
android:id="@+id/tableRow3"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<EditText
android:id="@+id/txtsearch"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:inputType="textMultiLine"
android:maxLines="3"
android:minLines="1"
android:scrollbarStyle="outsideOverlay"
android:scrollbars="vertical" />
</TableRow>
<TableRow
android:id="@+id/tableRow1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<Button
android:id="@+id/btnkamus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:drawableRight="@drawable/search" />
<Button
android:id="@+id/btnsearch"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="Kesan" />
<Button
android:id="@+id/btncadang"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="1"
android:text="Cadang" />
</TableRow>
<WebView
android:id="@+id/webView1"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>