?? ? ? ? 模拟器上安装Android?Market ? 一.?基本介绍 Android的Market是一个应用市场,里面不仅有很多的实用的软件,包括很多免费的软件可以下载使用,而且也有一些库文件提供下载,比如在Android上使用TTS功能时,如果手机中没有安装需要的一些语言数据时,就会连接到Market从那里下载。 可是Android模拟器中默认是没有Market的,因此默认情况下就没有办法在模拟器中下载Market上丰富的软件,也没有办法下载比如TTS功能需要的语言数据等。但是通过一定的方法还是可以让模拟器安装上Market,下面就具体来安装一下。 二.?具体实现 1.?首先创建模拟器 使用Eclipse创建模拟器已经很简单了,其中要注意的是必须给模拟器分配SD卡空间,我这分配了256M。 ? 图1?创建Android模拟器 2.?命令行方式启动虚拟机 ?把 Android?SDK对应API平台下的system.img文件(比如我的为:D:/Others/Android/android-sdk- windows-1.6_r1/platforms/android-8/images/system.img)拷贝到创建的模拟器目录下(比如我的 为:C:/Documents?and?Settings/Administrator/.android/avd /GoogleDroid2_2.avd)。 ? 图2?拷贝system.img文件?? 然后打开命令行,切换到SDK的Tools目录下(如果已经把路径添加到系统路径中,则可以在任何目录下执行),加参数“-partition-size?100”启动虚拟机,参数的意思是为system/data分配100M的空间,以便有足够的空间安装Market软件。 ? 图3?带参数启动模拟器 ? 3.?让Android启动Checkin服务 要正常使用“Android?Market(电子市场)”,必须启动Checkin服务。等Android?2.2虚拟机启动完毕,看到正常的界面。 ? 图4?模拟器启动完毕 ? 这时候,我们可以把配置文件build.prop取回来编辑(如果你有真实的Android连在电脑上,一定要先取下来再进行以下操作)。 ? ? 图5?命令行方式提取build.prop文件 ? ? 注意:第一次执行adb指令,会加载adb相关服务,然后提示“device?offline(设备不在线)”。此时,需要再次执行上面的adb指令就可以了。 也可以通过Eclipse的DDMS中的File?Explorer来获取这个文件, ? ? 图6?通过DDMS提取build.prop文件 ? 这样一来,build.prop就放在了?SDK的?tools目录下,用文本编辑软件比如EmEditor、UltraEdit之类的打开它。将“ro.config.nocheckin=yes”?(一般为文件中的倒数第三行)?前面加“#”号注释掉。 #ro.config.nocheckin=yes 然后再传到Android虚拟机上,重新启动虚拟机,Checkin服务就启动了(在上传之前,需要执行“adb?remount”指令使/system目录可写)。 adb?remount? ? 图7?命令行方式上传build.prop ? 4.?安装“Android??Market”到虚拟机 ? ? 首先,下载一个为各种手机开发的定制版Android?2.2,将它解压缩,将system/app/GoogleServicesFramework.apk???、?system/app/Vending.apk?和system/app/MarketUpdater.apk(可以在这里下载)?放到?Android?SDK的?tools?目录?下。?(不过MarketUpdater更新好像没有起作用,没法自动更新Market的版本) 然后执行以下指令安装这两个apk安装包,并且删除Android虚拟机上的SdkSetup.apk(注意大小写): adb?push?GoogleServicesFramework.apk?/system/app? Adb?push?MarketUpdater.apk?/system/app? ? ? 图8??安装?Market?相关文件 ? ?5.?清理现场 ? 关闭虚拟机,??把产生的??image:?userdata-qemu.img,?userdata.img,?cache.img?都删除,重新启动虚拟机它就会自动初始化。 图9??删除虚拟器自动产生的文件 ? 6.?“Android?Market”现身 ? ??? 按照常规方式启动刚才新创建的Android?2.2?虚拟机,就可以看到?“Android?Market”?。 ? 图10??启动?Android?模拟器 图11??出现?Market?图标?? ? 点击“Market”?,就需要进行?Google?登录了,用你自己的?Google?账号登录吧。 ?? 图12?Market?使用时登录?Google?账户 ? 登录以后,理论上说就可以使用“Android?Market?(电子市场)?”?尝试各种软件了 ? ?? ? 图13??使用?Market ? ? 但是实际上和真实手机上的Market?相比软件数量上还是有所差别的,其中有好多软件搜索不到,比如搜索?TTS?,只有一个结果,没有搜索到?TTS?Extended?等内容,但是在实际的真机上的Android?Market?中是能搜到的。 ? 图14??搜索?TTS?的结果 ? 应该是模拟器的Market?没法更新的原因,比如现在手机上的?Market?可以更新到最新的版本,界面如下所示: ? ? 图15??新版?Android?Market?界面 但是模拟器中的Market?还是之前的界面及版本,没法自动更新。 ? 三.总结 不过虽然和实际手机上的Market?的有差别,但是也可以使用上面的好多软件了,如果没有真机或者真机上没有默认安装?Market?,那就先去模拟器中试用一下吧。 ? 附: 请在?这里?参考更早的原文,以上部分只是参考着操作并记录了过程。
adb?push?build.prop?/system/build.prop
adb?push?Vending.apk?/system/app
adb?shell?rm?/system/app/SdkSetup.apk
http://blog.csdn.net/ichliebephone/article/details/6110519
?android abd
http://blog.csdn.net/biexf/article/details/6043424
?