Android应用中的广告无法正常运行

时间:2012-04-10 14:08:57

标签: java android ads adview

我正在制作一个我希望展示广告的Android应用,但我无法让它正常工作。

当我尝试将configChanges添加到AndroidManifest.xml时,我收到以下错误,这可能是问题......

error: Error: String types not allowed (at 'configChanges' with value 'keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize').

这是我的AndroidManifest.xml文件......

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mysoftwaremobileapps.ParachuteHunterLite"
android:versionCode="1"
android:versionName="1.0" >

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

<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:label="@string/app_name"
        android:name=".ParachutehunterActivity" android:screenOrientation="portrait" android:configChanges="orientation">

        <intent-filter >
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:label="@string/app_name" android:name=".GameScreenActivity" android:screenOrientation="portrait" android:configChanges="orientation"></activity>
    <activity android:name=".playerLostMessageActivity" android:label="@string/app_name" android:screenOrientation="portrait" android:configChanges="orientation"></activity>
    <activity android:name="com.mysoftwaremobileapps.ParachuteHunterLite.SubmitScoreActivity" android:label="@string/app_name" android:screenOrientation="portrait" android:configChanges="orientation"></activity>
    <activity android:configChanges="keyboard|keyboardHidden|orientation" android:label="@string/app_name" android:name=".AdActivity" android:screenOrientation="portrait"></activity>
    <activity android:name="com.google.ads.AdActivity" android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"/>


</application>

</manifest>

这是我用来将广告添加到我的应用中的活动...

package com.mysoftwaremobileapps.ParachuteHunterLite;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;

import com.google.ads.AdRequest;
import com.google.ads.AdSize;
import com.google.ads.AdView;

public class AdActivity extends Activity implements OnClickListener{
//Called when the activity is first created
Button AdsButton;
public String value;
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.adscreen);
    AdsButton = (Button)findViewById(R.id.AdsButton);
    AdsButton.setOnClickListener(this);
    AdView myAdView = new AdView(this, AdSize.BANNER, "Your Publish ID");

    //get layoutView
    LinearLayout rootView = (LinearLayout)this.findViewById(R.id.MainLayout3);
    LinearLayout.LayoutParams layoutParams = new LayoutParams(320, 50);
    rootView.addView(myAdView, 0, layoutParams);        

    AdRequest re = new AdRequest();
    re.setGender(AdRequest.Gender.UNKNOWN);
    //re.setTestDevices(testDevices);
    //re.setTesting(testing)
    myAdView.loadAd(re);
}
public void onClick(View src) {
    switch(src.getId()) {
    case R.id.AdsButton:
        Uri ParachuteHunterPurchaseSite = Uri.parse("https://play.google.com/store/apps/details?id=com.mysoftwaremobileapps.ParachuteHunter&feature=search_result#?t=W251bGwsMSwyLDEsImNvbS5teXNvZnR3YXJlbW9iaWxlYXBwcy5QYXJhY2h1dGVIdW50ZXIiXQ..");
        Intent launchParachuteHunterPurchaseSite = new Intent(Intent.ACTION_VIEW, ParachuteHunterPurchaseSite);
        startActivity(launchParachuteHunterPurchaseSite);
        break; 
    }
}
}

请注意,onClick(AdsButton)中的Activity方法与Google提供的AdView无关。

1 个答案:

答案 0 :(得分:0)

对于android:configChanges错误,它是否有抱怨,因为您的应用程序有minSdkVerion="3",但您的configChanges行中的某些值在SDK 13之前不存在,例如{{1 }}

请参阅http://developer.android.com/reference/android/R.attr.html#configChanges,其中这些值必须与ActivityInfo中的值保持同步,并包含/ utils / ResourceTypes.h

如果这不能解决问题,请告诉我们无法正常工作。例如,您是否收到任何例外或错误?