Android-新AdmobApi不适用于Android中的广告
我正在开发最新的android SDK 23,并试图在我的应用程序中添加admob广告。所以我也遵循了和这一点,但我仍然得到了一个错误 错误Android-新AdmobApi不适用于Android中的广告,android,admob,ads,Android,Admob,Ads,我正在开发最新的android SDK 23,并试图在我的应用程序中添加admob广告。所以我也遵循了和这一点,但我仍然得到了一个错误 错误 FATAL EXCEPTION: main java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.adtest/com.android.adtest.MainActivity}: android.view.InflateException: Binary
FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.android.adtest/com.android.adtest.MainActivity}: android.view.InflateException: Binary XML file line #10: Error inflating class com.google.android.gms.ads.AdView
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2343)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395)
at android.app.ActivityThread.access$600(ActivityThread.java:162)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364)
at android.os.Handler.dispatchMessage(Handler.java:107)
Caused by: android.view.InflateException: Binary XML file line #10: Error inflating class com.google.android.gms.ads.AdView
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:698)
at android.app.Activity.performCreate(Activity.java:5122)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1081)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2307)
... 11 more
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.google.android.gms.ads.AdView" on path: DexPathList[[zip file "/data/app/com.android.adtest-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.android.adtest-1, /vendor/lib, /system/lib]]
at android.view.LayoutInflater.createView(LayoutInflater.java:552)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
... 24 more
我不知道哪里出了问题。
请帮帮我。
提前谢谢
甚至我也能在图形布局中看到adView。它显示android中的灰色布局
Main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="AAA"/>
<com.google.android.gms.ads.AdView android:id="@+id/adView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="MY ID"/>
</LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.adtest"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="21" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version"/>
<activity
android:name=".MainActivity"
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"/>
</application>
</manifest>
右键单击项目->生成路径->配置生成路径->订单和导出选项卡 确保选中“Android私有库”进行导出 如果您从libs/文件夹中添加了任何库,请删除它们,因为它们会自动添加到“Android专用库”部分 在布局文件中,尝试以下操作
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
而不是
xmlns:ads="http://schemas.android.com/apk/res-auto"
这是Google play services文件夹的问题,请检查一下。和变化。遵循以下步骤
您将需要向onCreate()中添加一些java代码,并尝试按照右列中的步骤逐一操作
// Java code required.
// testDevices and loadAdOnCreate attributes are
// no longer available.
AdView adView = (AdView)this.findViewById(R.id.adView);
AdRequest adRequest = new AdRequest.Builder()
.addTestDevice(AdRequest.DEVICE_ID_EMULATOR)
.addTestDevice("TEST_DEVICE_ID")
.build();
adView.loadAd(adRequest);
如果将代码从一个项目复制到另一个项目,则需要重新生成应用程序
在Android Studio>菜单上单击“构建”重建项目”请发布您的清单xmlPlease find Manifest.xml“我的ID”只是在这里发布的一个假的,不是吗?@Opiatefuchs:是的,只是替换我的admob ID。您确定有最新的google play服务包吗?我也尝试过这个这对我也不起作用。请尝试删除gen文件夹,然后清理项目相同的问题。请检查此问题。我也看到了此问题并尝试了此问题。我试着从过去3天这个。所以我搜索了所有的东西(您的应用程序的同一工作区中是否有Google play服务库?是的。我已经复制了它。并从同一文件夹导入了它。)