【问题标题】:AdMob error: "You must have AdActivity declared in AndroidManifest.xml with configChanges"AdMob 错误:“您必须在 AndroidManifest.xml 中使用 configChanges 声明 AdActivity”
【发布时间】:2013-04-27 10:16:07
【问题描述】:

我查看了类似的问题并提出了所有建议,但我的手机上仍然收到这条消息:“您必须在 AndroidManifest.xml 中使用 configChanges 声明了 AdActivity”。

这是清单中的内容:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="..." android:versionCode="1" android:versionName="1.0">
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="17"/>
<application android:icon="@drawable/ic_launcher" android:label="@string/app_name"   android:allowBackup="true">
<activity android:name="..." 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.ads.AdActivity"
          android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode"/>    
<service android:enabled="true" android:name="..." />
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
</manifest> 

还有什么我应该做的吗? 请注意:我看过其他类似的问题,但没有一个答案能解决我的问题。 感谢您的帮助。

【问题讨论】:

  • 您在这些属性中缺少很多(嗯,实际上只有两个)。 android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" &gt;
  • @IceMAN 我尝试添加 screenSize|smallestScreenSize 但现在出现错误。
  • 这是我得到的错误:error: Error: String types not allowed (at 'configChanges' with value 'keyboard|keyboardHidden|orientation|screenLayout|uiMode| screenSize|smallestScreenSize').
  • 伙计们,我知道这是与其他问题类似的问题,但这些问题的解决方案并没有解决我的问题。

标签: android error-handling admob


【解决方案1】:

将清单更改为

<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>

还有,

您必须将项目构建目标设置为Android 3.2 或更高版本。

注意:

不要忘记清单中的这两个权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

参考this教程

阅读documentation

【讨论】:

  • 我一添加:screenSize|smallestScreenSize 就会出错。
  • 您没有按照我的回答,请参阅 configChanges。您需要拥有所有 7 项
  • 正如我上面所说,当我添加 screenSize|smallestScreenSize 时,我得到了错误。我已经报告了上面遇到的错误。
  • 在eclipse中右键项目文件夹->属性->选择android->选择固件3.2或更高版本
  • 谢谢,我这样做了,错误消失了,但我现在也没有在屏幕上看到任何广告块。另外我的设备是Android 2.3.4,可以在属性中选择Android 4.2.2吗?
猜你喜欢
  • 2012-09-08
  • 2012-10-28
  • 1970-01-01
  • 2014-08-12
  • 2012-07-14
  • 1970-01-01
  • 2012-12-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多