BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / mobile-terminal-at / #328同步于 2010/3/25
该镜像源已超过 30 天没有更新,可能在源站已被删除。
MobileTerminalAT机器人发帖

模拟器1.5 :Avd 创建,adb 命令攻略

WJwj
2010/3/25镜像同步4 回复
模拟器1.5 :Avd 创建,adb 命令攻略 google 上面下载Android 的SDK 或者OPhonesdn 下载Ophonesdk,解压出来后在SDK 的根目录下有一个tools 文件夹,双击emulator.exe,直接启动模拟器。 模拟器1.5 1.模拟器外观的定制: 480x320, landscape: emulator -skin HVGA-L 320x480, portrait : emulator -skin HVGA-P (default) 320x240, landscape: emulator -skin QVGA-L 240x320, portrait : emulator -skin QVGA-P 2.为模拟器加上SD 卡: emulator -sdcard D:\sdcard.img 下面我们再来说说如何创建"sdcard.img"文件: “tools”目录下还有另外一个很好用的工具“mksdcard.exe”,一看名字就知道——make sdcard。对,就用它来创建一个“SD 卡”。 命令为: mksdcard 512M D:\sdcard.img OK,这样一个容量为512M 的SD 卡就创建完毕了。 使用SDCard: 创建: mksdcard <512M> (bytes(default),K,M) 连接到模拟器: emulator -sdcard <目录/sdcard.img> 传文件到SDCard: adb push <目录/myaudio.mp3> 3、模拟器的通信GPhone 的模拟器有个特有的号码:15555218135,这个就类似我们实体手机的SIM 卡号码啦。 拨号,三步: 1.运行cmd 2.连接: telnet localhost 5554 3.命令:gsm call 15555218135 模拟器显示来电,接听/挂断和实体手机一样。 发短信也一样简单,重复上面1,2两步,第三部命令改一下: sms send 15555218135 Hello,this is a Message. adb 命令 adb(Android Debug Bridge)是Android 提供的一个通用的调试工具,借助这个工具,我们可以管理设备或手机模拟器的状态。还可以进行以下的操作: 1、快速更新设备或手机模拟器中的代码,如应用或Android 系统升级; 2、在设备上运行shell 命令; 3、管理设备或手机模拟器上的预定端口; 4、在设备或手机模拟器上复制或粘贴文件 一些常用的操作: 进入Shell: adb shell 通过上面的命令,就可以进入设备或模拟器的shell 环境中,在这个Linux Shell 中,你可以执行各种Linux 的命令,另外如果只想执行一条shell 命令,可以采用以下的方式: adb shell [command] 如:adb shell dmesg 会打印出内核的调试信息。 (Android 的linux shell 做了大量精简,很多linux 常用指令都不支持) 上传文件: adb push 下载文件: adb pull 安装程序: adb install <*.apk> 卸载软件: adb shell rm /data/app/<*.apk> 补充一点,通过adb 安装的软件(*.apk)都在"/data/app/"目录下,所以安装时不必制定路径,卸载只需要简单的执行"rm"就行。 结束adb: adb kill-server 显示android 模拟器状态: adb devices (端口信息) adb get-product (设备型号) adb get-serialno (序列号) 等待正在运行的设备: adb wait-for-device 端口转发: adb forward adb forward tcp:5555 tcp:1234 (将默认端口TCP 5555转发到1234端口上) 查看bug 报告: adb bugreport adb shell sqlite3 访问数据库SQLite3 adb shell logcat -b radio 记录无线通讯日志:一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录: 应用程序配置文件:"AndroidManifest.xml"中""决定是否应用程序是否显示在Panel 上 am 指令(在shell 内使用am 来加载android 应用): am [start|instrument] am start [-a ] [-d ] [-t ] [-c [-c ] ...] [-e [-e ...] [-n ] [-D] [] am instrument [-e ] [-p ] [-w] 启动浏览器: am start -a android.intent.action.VIEW -d http://www.google.cn/ 拨打电话: am start -a android.intent.action.CALL -d tel:10086 启动google map 直接定位到北京: am start -a android.intent.action.VIEW geo:0,0?q=Beijing 模拟器目录 目录: # ls ls sqlite_stmt_jou cache sdcard etc init init.goldfish.r init.rc data system proc sys sbin default.prop root dev 这里要说明下,从andorid 中得到的文件流的字符串的顺序是按“类型+权限+拥有者+数组+大小+日期+名称+链接到”顺序排列的,其中类型“d”表示的是文件夹,"l"表示的是链接,'-'表示的是文件。 例如d rwxrwx--- system cache 2009-01-09 11:46 cache 上面的目录就是通过解析ls 命令返回的字符串进行解析的。 数据库: 联络人(含通话记录)数据库:/data/data/com.android.providers.contacts/databases/contacts.db 媒体库(貌似记录铃声设置等信息): /data/data/com.android.providers.media/internal.db 系统设置: /data/data/com.android.providers.settings/databases/settings.db 短信库: /data/data/com.android.providers.telephony/databases/mmssms.db Web 设置: /data.data/com.android.settings/databases/webview.db 地图搜索历史记录:/data/data/com.google.android.apps.maps/databases/search_history.db 帐号库?(内含androidId 信息) : /data/data/com.google.android.googleapps/databases/accounts.db 铃声: /system/media/audio 时区设置: /data/property/persist.sys.timezone 目前的安装模式 安装前: 1. emulator -wipe-data 2. adb push busybox ./ 3. adb shell ./busybox tar -cf /tmp/data.tar /data 4. adb pull /tmp/data.tar . 5. mkdir original 6. cd original 7. tar -xf ../data.tar 安装后: 1. adb shell ./busybox tar -cf /tmp/data.tar /data 2. adb pull /tmp/data.tar . 3. mkdir after_install 4. cd after_install 5. tar -xf ../data.tar 目前来看,就是/data/app 和data/data 下多了两个相关文件,同时在/data/system/packages.xml中增加了安装的程序信息。似乎菜单也是从这个文件中得到是否新安装程序,以及如何显示相关信息比如名称什么的。 android 模拟器和真机的不同之处 * 不支持呼叫和接听实际来电;但可以通过控制台模拟电话呼叫(呼入和呼出) * 不支持USB 连接 * 不支持相机/视频捕捉 * 不支持音频输入(捕捉);但支持输出(重放) * 不支持扩展耳机 * 不能确定连接状态 * 不能确定电池电量水平和交流充电状态 * 不能确定SD 卡的插入/弹出 * 不支持蓝牙 andoroid 模拟器使用注意: 平时使用emulator 测试开发的网友注意应该定期清理下C:\Documents and Settings\sh\LocalSettings\Temp\AndroidEmulator 文件夹,由于Android 模拟器每次运行时会临时生成几个.tmp 后缀的临时文件,没有几个月功夫简单一看竟然占用磁盘空间高达5GB 之多。这些文件网友可以安全的删除 模拟器常用小技巧 正确启动模拟器[SDK 1.5] 安装好JDK 后,运行框中输入cmd,回车后就会弹出个黑框。(接下来的大部分操作都是在这黑框下进行的) 在黑框中输入cd /d D:/ android-sdk-windows-1.5/tools/ (这个路径是我存放模拟器的路径、大家要根据自己所存放的路径输入相应的路径) 输入完正确的命令后就会自动弹出你所存放模拟器的路径 接着在这命令后面输入android 并回车,这时黑框中会弹出一堆的命令,看不懂也没关系!我们滚动黑框见到最后一个命令的位置就好 在最后的这个命名后面输入android create avd -t 2 -n g1,并回车。『注意:这个命令中最后一个g1是可以任意取名的,你可以写g2、android、gphone&#8226;&#8226;&#8226;之类的』【大家在操作这步的时候,要切记android 与create 与avd 与-t 与2与-n 与g1之间都是有空格的】 这时又会弹出个新的命令出来!我们只要输入no 并回车就可以了 结束以上的操作之后,打开存放SDK 模拟器的文件,找到模拟器的程序右键点击发送——桌面快捷方式 回到桌面后,发现双击那个小绿人发现还是打不开模拟器!先不要着急、右键点击属性!在快捷方式-目标的路径后面加上-avd g1 再次注意:这个-前面是要空格一下的,avd 后面跟着的g1则要跟你在上一步黑框中所输入的名字是一致的。
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
figozhang机器人#1 · 2010/4/9
有个问题,我创建好sd卡之后要和模拟器相连,dos下出错,问我是哪个模拟器~我是android,确实有1.5和1.6俩个模拟器,但我不知道怎么指定~
raintemple机器人#2 · 2010/4/9
非用命令行么……查guide吧里面有 【 在 figozhang (figo) 的大作中提到: 】 : 有个问题,我创建好sd卡之后要和模拟器相连,dos下出错,问我是哪个模拟器~我是android,确实有1.5和1.6俩个模拟器,但我不知道怎么指定~
WJwj机器人#3 · 2010/4/10
什么系统?XP的话:先进入sd卡的根目录,然后,emulator -avd <模拟器名字> -sdcard <sd卡名字.img> 【 在 figozhang 的大作中提到: 】 : 有个问题,我创建好sd卡之后要和模拟器相连,dos下出错,问我是哪个模拟器~我是android,确实有1.5和1.6俩个模拟器,但我不知道怎么指定~
ruby1043机器人#4 · 2010/5/8
很有用~~谢谢分享!