2012-03-07 63 views
1

围绕这个问题有很多问题,但我找不到解决方案。如何在2.2设备上开发时使AdMob工作?

我使用eclipse为Android开发,我想在我的手机上测试,这是一款Android 2.2 HTC的愿望。我正在使用最新的AdMob sdk,由android工具(rev 4)部署,我的Sdk是android到最新版本(sdk工具在rev 16中,platform-tools在rev 10中,API 7到15)。

我读过,到使用AdMob,我必须:

  • 有AndroidManifest.xml中有一个条目

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

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

  • 我的电脑相当陈旧,使用模拟器是不是一个真正的选择(也不是购买一个这个问题)

  • 恢复到一个旧的sdk似乎并不聪明(它只是推迟这个问题通常是一个不好的选择。

现在情况出现了,我怎么能在eclipse中使用最新的AdMob sdk进行开发并对我的2.2目标进行调试?

+0

有时候Eclipse不拿起设备。你有没有尝试从命令行安装应用程序?一旦你的设备插入,运行'adb devices'就可以得到你的设备ID,'adb -s YOUR_DEVICE_ID install path/to/your.apk'应该安装在你的手机上。 – 2012-03-10 00:58:06

+0

在命令行上安装应用程序,不起作用的是直接从eclipse安装/调试。基本上,我只是缺乏与IDE的集成。 – Bruce 2012-03-10 17:05:27

+0

命令行路由至少起作用是件好事。它应该仍然可以通过Eclipse工作 - 只要该设备至少与minSdkVersion一样高,即使该设备低于targetSdkVersion,该设备通常也是可用的选项。我不太清楚为什么它不适合你。 – 2012-03-12 05:40:35

回答

3

我更新到最新的ADT(16)

现在,月食说:

  • 选择显示了带有目标Android 3.2的
  • 我的设备(安卓2.2.2)兼容的设备红十字

但是,我可以双击这个目标和eclipse将正确运行它。我现在可以直接从eclipse调试我的2.2设备。作为一个方面说明,我可能被月蚀中显示的红色十字架所愚弄,而不是“强制”在设备上运行。

编辑:固定格式

+0

我不喜欢Eclipse如何做到这一点。它是红色的,因为2.2设备低于targetSdkVersion。但它比minSdkVersion更高,因此它是运行应用程序的有效设备。 – 2012-03-12 22:49:31

2

编辑:

刚刚做了三件事情:

1.Created项目定位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" 
    

和完成任务。

+0

如果我设置了'target = 8'并且做了你提出的改变,AdMob就不起作用了:我得到错误,比如'03-07 15:31:08.179:E/Ads(13242):android :com.google.ads.AdActivity的configChanges值必须包含screenLayout。 ' – Bruce 2012-03-07 14:29:32

+0

.....代码无法工作(用于更新的AdMob)。 – asish 2012-03-07 14:47:49

0

设置你分钟SDK版本

android:minSdkVersion="8" 

而且你的目标设定为15,正好利用这个让AdMob

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

实在看不出任何其他方式做到这一点我”我害怕。

+0

我这样做,它的工作:但是,从日食,我无法直接在2.2目标上调试,因此我的问题(它说没有设备兼容3.2(我使用目标= 13这是最低支持)) – Bruce 2012-03-07 15:23:01

相关问题