找不到com.google.ads.AdActivity

时间:2012-01-14 05:05:09

标签: android admob

![在此处输入图片说明] [1]

^ 有图像所以你知道我正在使用sdk 3.2。这段代码还有更多内容,但基本上这是我主要内容中的java代码的全部内容,并且当我去加载它时它不会加载我的广告。我的Main.XML广告中没有任何错误,基本上广告根本没有显示

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



     public class LearningLettersActivity extends Activity

         private AdView adView;


         @Override
         public void onCreate(Bundle savedInstanceState) {
             super.onCreate(savedInstanceState);
             setContentView(R.layout.main);


         // Create the adView    
         adView = new AdView(this, AdSize.BANNER, "aXXXXXXXXXXXXXXXX); //<---My   Publisher Id there"    
         // Lookup your LinearLayout assuming it’s been given    
         // the attribute android:id="@+id/mainLayout"    \
         LinearLayout layout = (LinearLayout)findViewById(R.id.mainLayout);   
         // Add the adView to it   
         layout.addView(adView);  
         // Initiate a generic request to load it with an ad   
         adView.loadAd(new AdRequest()); 

这是我的清单

   <?xml version="1.0" encoding="utf-8"?>
   <manifest xmlns:android="http://schemas.android.com/apk/res/android"
                 package="com.better.work.learning.letters.and.more"
                 android:versionCode="3"
                 android:versionName="1.00" >
         <application
                 android:icon="@drawable/icon"
                 android:label="@string/app_name" >
             <activity
                     android:name=".LearningLettersActivity"
                     android:label="@string/app_name" 
                     android:screenOrientation="landscape" >
                 <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|screenSize|smallestScreenSize"/>
         </application>
         <uses-permission android:name="android.permission.INTERNET"/>
         <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
         <uses-sdk  android:minSdkVersion="4"/>
     </manifest>            

当我在手机上测试时,基本上没有任何东西可以用于我的广告,我尝试使用下面的代码但仍然没有。

     AdRequest adrequest = new AdRequest();
     adrequest.setTesting (true);
     adView.loadAd(adrequest);

我也试过了:

     AdRequest adrequest = new AdRequest();
     adrequest.setTesting (true);
     adrequest.setTestingDevices("HT0CWHL11423") //<--- the name of my phone that appears when I go to load the emulator tab
     adView.loadAd(adrequest);  


    01-18 03:50:19.874: E/Ads(16938): Could not find com.google.ads.AdActivity, please make sure it is registered in AndroidManifest.xml.
    01-18 03:50:19.874: E/Ads(16938): You must have AdActivity declared in AndroidManifest.xml with configChanges.

2 个答案:

答案 0 :(得分:0)

适用于Android的Google AdMob Ads SDK需要Android 1.5或更高版本。 确保您拥有Android SDK的最新副本,并且至少要针对Android v3.2进行编译(将default.properties中的目标设置为android-13)。

因此,请将android v3.2作为最新副本的目标版本(因为您的清单文件表明您已使用最新版本)。

有关详细信息,请查看this

希望这会对你有所帮助。

答案 1 :(得分:0)

在logcat中查找标记为Ads的任何内容。具体来说,寻找类似的东西:

  

广告请求成功,但由于缺少广告资源而未返回任何广告。

您可能无法收回广告,因为AdMob无法填充广告。

这里有几点需要注意。 AdRequest.setTesting(true),仅用于为仿真器设置测试模式,不推荐使用AdRequest.addTestDevice(AdRequest.TEST_EMULATOR)来设置模拟器上的测试模式。对于设置测试设备,您应该输入的设备ID是一个散列设备ID,如果您在设备上进行调试,也可以在logcat中找到它。

最后,您正在使用的图片显示您为ButtonMasher应用程序提供了SDK,但您提供的代码看起来像是用于Letter Learning应用程序。确保您确实在此应用中使用4.3.1。