要玩google 手机 G1的模拟器,当然需要先去google上面下载Android的SDK,解压出来后在SDK的根目录下有一个tools文件夹,里面就是模拟器和一些非常有用的工具。

双击“emulator.exe”,直接启动模拟器,简单吧。当然,如果要对模拟器进行一些定制,还是要从命令行调用,带上参数启动。下面就来介绍一下启动是常用的几个参数:

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 1024M D:\sdcard.img

OK,这样一个容量为1G的SD卡就创建完毕了。

使用SDCard:

创建: mksdcard <1024M>

(bytes(default),K,M)

连接到模拟器: emulator -sdcard

传文件到SDCard: adb push

玩过手机模拟器的人一般最感兴趣的当然是模拟器能做什么呢?下面一一道来:

GPhone的模拟器有个特有的号码:15555218135,这个就类似我们实体手机的SIM卡号码啦。要实现拨号,用手机?当然不行!

更简单,三步:

1.运行 cmd

2.连接: telnet localhost 5554

3.命令:gsm call 15555218135

look!是不是模拟器上显示来电了?接听/挂断和实体手机一样。

发短信也一样简单,重复上面1,2两步,第三部命令改一下:

sms send 15555218135 Hello,this is a Message.

来说说PC与模拟器文件传输的方法吧。这里需要用到另一个重要工具,也在“tools”目录下,“adb.exe”。

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

卸载软件: adb shell rm /data/app/

补充一点,通过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\Local Settings\Temp\AndroidEmulator文件夹,由于Android模拟器每次运行时会临时生成几个.tmp后缀的临时文件,没有几个月功夫简单一看竟然占用磁盘空间高达5GB之多。这些文件网友可以安全的删除

android自动化 模拟器,Android模拟器入门[转]相关推荐

  1. android 自动化 录制,android 自动化录制回放测试工具

    uiautomator 做一般的 ui 自动化还是不错的,常见的操作基本都支持,下面是用 uiautomator 做的一个可以录制回放的工具 1, var.txt 用于存放一些参数,如登录用户名,密码 ...

  2. android自动化解锁,Android唤醒、解锁屏幕代码实例

    解锁.唤醒屏幕用到KeyguardManager,KeyguardLock,PowerManager,PowerManager.WakeLock 所需权限: //锁屏.唤醒相关 private Key ...

  3. 混合开发入门,java jdk和android sdk安装配置+模拟器安装配置+android studio运行起项目--windows电脑

    首先分享我安装配置过程中遇到的问题,如果你也遇到了,那么跟着我的安装步骤,或许就没问题了... 1.jdk安装过程中没有提示安装jre,jdk的安装目录下面也没有jre文件夹 2.java不是内部或外 ...

  4. CPU为AMD的电脑如何配置 Android Studio以及Genymotion模拟器

    前言:对于使用AMD处理器的同学,Android Studio真的很不友好,不支持inter 虚拟架构,配置了一天真的太伤了,所以写一篇博客帮助大家避雷. 详见后文! 刚刚了解到,目前的Android ...

  5. android调试更换模拟器,在模拟器上调试 Android 磨损

    在模拟器上调试 Android 磨损Debug Android Wear on an Emulator 06/21/2018 本文内容 这些文章介绍了如何在模拟器上调试 Xamarin 应用程序应用程 ...

  6. android 模拟器识别,一种基于符号的识别Android应用运行在模拟器中的方法与流程...

    本发明涉及一种基于符号的识别android应用运行在模拟器中的方法. 背景技术: 很多的移动应用都会使用一种基于lbs的地理围栏的技术(如移动打卡),某些用户为了突破这种围栏的限制,将移动应用运行在模 ...

  7. android webview 模拟器,android – WebView没有填满设备或模拟器的整个屏幕

    我正在开发一个 Android应用程序,它在启动时加载Web应用程序.为了达到我使用webview控件的目的.我希望我的webview能够全屏显示,以便为用户提供原生的感觉.我尝试了所有方法来全屏显示 ...

  8. android studio点击图片,如何在Android Studio中的模拟器图库中添加图像?

    如何在Android Studio中的模拟器图库中添加图像? 我正在开发图像过滤器应用程序. 但是,如果我没有任何图像,就无法真正尝试. 我知道我可以在电话中对其进行测试,但这并不相同,因为我需要错误 ...

  9. android studio panic,Android Studio模拟器PANIC错误

    Android Studio模拟器突然停止工作.当我尝试运行虚拟设备时,我在事件日志中收到以下错误. 模拟器:PANIC:找不到AVD系统路径.请定义ANDROID_SDK_ROOT仿真器:处理完成, ...

  10. unable to locate adb , android studio无法识别模拟器和手机

    配置环境变量:新建变量[Android_Home],内容:  sdk绝对路径+分号+sdk下的plateform-tools的绝对路径,例如:F:\Android\Sdk;F:\Android\Sdk ...

最新文章

  1. iOS开发之--打印一堆奇怪东西的解决方案
  2. 关于Spring的几个问题
  3. RabbitMQ的死信队列的应用
  4. Operations Manager 2007 R2系列之单台服务器拓扑图监控
  5. 幂级数——函数的幂级数展开
  6. 设计总结:进销存业务流程设计
  7. 2021年登高架设模拟考试题及登高架设复审模拟考试
  8. html5的class属性值,HTML class 属性 | 菜鸟教程
  9. vmalloc 虚拟实现
  10. 《Windows不欢迎你,你爱用什么系统就用什么去吧》
  11. Excel文档误删的4种恢复方法,1秒就可以还原所有内容,你用过吗
  12. AI轰鸣时代(一):苹果VS麒麟,今年的移动芯片究竟比什么?
  13. 新玺配资:外围市场大跌 A股很难不受影响
  14. DB2将DETACH下来的临时表ATTACH到分区表报错SQL20307N SQLSTATE=428GE
  15. 读书笔记:无人机控制(六)
  16. 10 万阿里人都爱用的网红工具,语雀如何“用保护钱包的技术在保护文档安全​”?...
  17. 23种设计模式学习记录之代理模式
  18. PanckPi(LicheePi)使用虚拟机成功联网后过一会自动断开解决
  19. 大家有没想过用手机在远程控制你电脑的关机啊?
  20. 分隔符delimiter

热门文章

  1. 微众银行软件测试笔试题面试题
  2. 小程序列表页制作优惠券效果
  3. GeoTrans2.4.1 用户手册 之 (六)笔记
  4. excel批量替换不同值(根据多个条件匹配、替换不成功的解决办法)
  5. c语言实现按键精灵区域找图,按键精灵根据图片查找坐标脚本示例
  6. 我眼中的几个测试认证(ISTQB/CSTQB/软件评测师)
  7. 分布式服务架构读书笔记-第六章 Java服务的线上应急和技术攻关
  8. 华为云PBX_基于华为云客服平台打造的比特百灵鸟AI管家解决方案发布
  9. Python官网无法打开解决方案
  10. 进销存小程序(一)项目整体功能和设计