[英]why i have this error with adactivity declared in androidmanifest.xml with configchanges
Android 2.1 Android 2.1
googleAdmobAdsAsdk6.2.1.jar googleAdmobAdsAsdk6.2.1.jar
my problem show when i test my ads in my app --> error --> you must have adactivity declared in androidmanifest.xml with configchanges 我的问题显示当我在我的应用中测试我的广告 - >错误 - >你必须在androidmanifest.xml中使用configchanges声明了adactivity
i'm try to add full activity like this 我试着添加这样的完整活动
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>
get to me this error 告诉我这个错误
error: Error: String types not allowed (at 'configChanges' with value 'keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize').
AndroidManifest.xml AndroidManifest.xml中
<?xml version="1.0" encoding="utf-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
android:windowSoftInputMode="adjustPan"
package="com.afrogfx.VerbTenses"
android:versionName="1.1"
android:versionCode="5" >
<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:resizeable="true"
android:anyDensity="true"
/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application android:icon="@drawable/icon" android:label="@string/app_name" android:allowBackup="true" >
<activity android:name="VerbTenses" android:label="@string/app_name"
android:theme="@android:style/Theme.Black.NoTitleBar"
android:configChanges="orientation|keyboardHidden|keyboard">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- AdMobActivity definition -->
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|"/>
</application>
<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="17"/>
</manifest>
mainactivity.java mainactivity.java
/*
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
*/
package com.afrogfx.VerbTenses;
import android.app.Activity;
import android.os.Bundle;
import com.google.ads.*;
import org.apache.cordova.*;
@SuppressWarnings("unused")
public class VerbTenses extends DroidGap
{
private static final String AdMob_Ad_Unit = "a150d4ba1fd9a78";
private AdView adView;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.setIntegerProperty("splashscreen", R.drawable.splash);
super.loadUrl("file:///android_asset/www/overview.html");
//admob
adView = new AdView(this, AdSize.BANNER, AdMob_Ad_Unit_HERE);
super.root.addView(adView);
AdRequest request = new AdRequest();
//request.setTesting(false);
adView.loadAd(request);
}
}
Layout Main.xml 布局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/lib/com.google.ads"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
LogCat logcat的
01-06 17:15:48.105: I/dalvikvm(283): Could not find method android.webkit.WebView.<init>, referenced from method org.apache.cordova.CordovaWebView.<init>
01-06 17:15:48.105: W/dalvikvm(283): VFY: unable to resolve direct method 417: Landroid/webkit/WebView;.<init> (Landroid/content/Context;Landroid/util/AttributeSet;IZ)V
01-06 17:15:48.105: D/dalvikvm(283): VFY: replacing opcode 0x70 at 0x0001
01-06 17:15:48.105: D/dalvikvm(283): VFY: dead code 0x0004-005b in Lorg/apache/cordova/CordovaWebView;.<init> (Landroid/content/Context;Landroid/util/AttributeSet;IZ)V
01-06 17:15:48.395: I/CordovaLog(283): Changing log level to DEBUG(3)
01-06 17:15:48.395: I/CordovaLog(283): Found preference for useBrowserHistory=true
01-06 17:15:48.436: D/CordovaLog(283): Found preference for useBrowserHistory=true
01-06 17:15:48.436: I/CordovaLog(283): Found preference for exit-on-suspend=false
01-06 17:15:48.436: D/CordovaLog(283): Found preference for exit-on-suspend=false
01-06 17:15:48.505: D/JsMessageQueue(283): Set native->JS mode to 2
01-06 17:15:48.505: I/CordovaWebView(283): Disabled addJavascriptInterface() bridge since Android version is old.
01-06 17:15:48.525: D/DroidGap(283): DroidGap.init()
01-06 17:15:48.544: D/CordovaWebView(283): >>> loadUrl(file:///android_asset/www/overview.html)
01-06 17:15:48.544: D/PluginManager(283): init()
01-06 17:15:48.614: D/CordovaWebView(283): >>> loadUrlNow()
01-06 17:15:48.645: E/Ads(283): The android:configChanges value of the com.google.ads.AdActivity must include screenLayout.
01-06 17:15:48.645: E/Ads(283): The android:configChanges value of the com.google.ads.AdActivity must include uiMode.
01-06 17:15:48.645: E/Ads(283): The android:configChanges value of the com.google.ads.AdActivity must include screenSize.
01-06 17:15:48.654: E/Ads(283): The android:configChanges value of the com.google.ads.AdActivity must include smallestScreenSize.
01-06 17:15:48.654: E/Ads(283): You must have AdActivity declared in AndroidManifest.xml with configChanges.
01-06 17:15:49.284: D/DroidGap(283): Resuming the App
01-06 17:15:49.435: D/dalvikvm(283): GC_FOR_MALLOC freed 3187 objects / 290448 bytes in 101ms
01-06 17:15:49.515: D/DroidGap(283): onMessage(onPageStarted,file:///android_asset/www/overview.html)
01-06 17:15:49.585: D/SoftKeyboardDetect(283): Ignore this event
01-06 17:15:49.704: D/SoftKeyboardDetect(283): Ignore this event
01-06 17:15:50.444: D/dalvikvm(283): GC_FOR_MALLOC freed 1079 objects / 131560 bytes in 120ms
01-06 17:15:50.465: D/webviewglue(283): nativeDestroy view: 0x26b710
01-06 17:15:57.385: D/CordovaLog(283): ReferenceError: Can't find variable: setpagenum
01-06 17:15:57.385: D/CordovaLog(283): file:///android_asset/www/overview.html: Line 35 : ReferenceError: Can't find variable: setpagenum
01-06 17:15:57.385: E/Web Console(283): ReferenceError: Can't find variable: setpagenum at file:///android_asset/www/overview.html:35
01-06 17:15:57.396: D/Cordova(283): onPageFinished(file:///android_asset/www/overview.html)
01-06 17:15:57.396: D/DroidGap(283): onMessage(onNativeReady,null)
01-06 17:15:57.405: D/DroidGap(283): onMessage(onPageFinished,file:///android_asset/www/overview.html)
01-06 17:15:59.479: D/DroidGap(283): onMessage(spinner,stop)
By mistake you have added one "|" 错误地你添加了一个“|” extra in android:configChanges thats why it is reading as String so please remove that.
额外的android:configChanges这就是为什么它作为字符串读取所以请删除它。
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation|"/>
Please remove this "|" 请删除此“|” last char, and write like..
最后一个字母,写得像..
<activity android:name="com.google.ads.AdActivity"
android:configChanges="keyboard|keyboardHidden|orientation"/>
After doing this clean the project, Hope it will work for you..:) 做完这个后清理项目,希望它能为你工作.. :)
You need to have all 7 items in: 你需要拥有所有7个项目:
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
只是尝试在Manifest
文件中更改minSdkVersion=17
。
尝试将project.properties
文件中的项目目标更改为
# Project target.
target=android-13
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.