如何在2.2设备上进行开发时使AdMob正常工作?

时间:2012-03-07 13:35:37

标签: android eclipse admob android-2.2-froyo

围绕这个问题有很多问题,但我找不到解决方案。

我正在使用eclipse为Android开发,我想在我的手机上测试,这是Android 2.2 HTC的愿望。

我正在使用最新的AdMob sdk,由android工具(rev 4)部署,我的Sdk是android到最新版本(第16版中的sdk工具,第10版中的平台工具,API 7到15)。

我读过要使用Admob,我必须:

  • 让AndroidManifest.xml带有条目

    android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
    
  • 要支持screenSize|smallestScreenSize标记,我必须在target=android-13中使用project.properties。 (这也可以通过改变项目构建目标在eclipse中完成)

  • 支持我的旧手机(android-2.2 = API-8),我需要在manifest.xml中添加android:minSdkVersion="8":这实际上允许在该手机上运行导出的apk(已测试,通过编译apk然后使用adb进行部署,但不要在eclipse上进行调试(eclipse期望设备符合buildtarget,而不是minsdk版本)

  • 我的电脑相当陈旧,使用模拟器实际上并不是一个选择(也不是购买一台)

  • 恢复到较旧的sdk似乎并不聪明(它只是推迟了问题而且通常是一个糟糕的选择。

现在情况就在这里,如何在我的2.2目标上使用最新的AdMob sdk和调试时在eclipse中开发?

3 个答案:

答案 0 :(得分:3)

我更新到最新的ADT(16)

现在,eclipse说:

  • 选择与目标Android 3.2兼容的设备
  • 我的设备(android 2.2.2)显示为红叉

但是,我可以双击此目标,eclipse将正确运行。我现在可以直接从eclipse在我的2.2设备上进行调试。作为旁注,我可能被eclipse中显示的红叉所欺骗,而不是“强制”在设备上运行。

编辑:修复格式

答案 1 :(得分:2)

编辑:

刚做完三件事:

1.修复了针对SDK版本2.2的项目,在清单

中使用了此代码
  android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
  1. 更改了project.properties文件中的目标

    target=android-15
    
  2. 在清单中,minSdkVersion仍为8

    uses-sdk android:minSdkVersion="8" 
    
  3. 完成工作。

答案 2 :(得分:0)

将您的最低SDK版本设置为

android:minSdkVersion="8"

并将目标设置为15,并将其用于Admob

android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"

我真的不敢看到任何其他方法。