androidsnapshot
❶ 如何新建安卓AVD虚拟模拟器
打开安卓虚拟设备管理器,即 AVD Manager。点击图中的“New...”按钮新建安卓模拟器设备。在下一界面设置安卓模拟器的详细设备参数,包括内存大小等。
打开窗体后,填写 AVD Name,即虚拟器的名称,此为必填项,并且只支持大小写英文、数字、下划线,不能与之前新建的 AVD 名称相同。然后选择 Device,选择适合自己的屏幕大小、分辨率。再选择 Target,即安卓系统版本。若出现 Device、Target 为空或无法选择,包括之前点击“New...”按钮时无效,请执行以下操作:
1.打开 SDK Manager(图3);
2.勾选自己需要安装的项目,图中仅为举例,点击“Install [n] packages”开始安装勾选,安装完成后会提示“Installed”(已安装)(图4-5);
3.安装或更新完成 Packages(安卓系统版本包)后,便可继续新建虚拟器。
勾选“ Keyboard ”、“ Skin ”,选择前置摄像头“ Front Camera ”为 Webcam0(会调用电脑摄像头)。后置摄像头“ Back Camera ”为任意一项即可。
设置 Memory Options(存储选项),在 RAM 右侧的文本框里输入运行内存大小(如512,即512M);然后在 VM Heap 右侧的文本框里输入缓存大小(如64,即64M)。
填写 Internal Storage(内部存储),即手机自带存储大小,然后继续填写 SD Card(SD 存储卡)大小,你可以选择右侧的下拉选项以改变数值的存储单位,还可以从已有的文件中选择 SD 卡。
其他选项可以保持默认,勾选“ Snapshot ”表示开启快照功能,勾选“ Use Host GPU ”即表示使用主机的 GPU。所有的设置完成后,点击“ OK ”按钮保存设置并关闭设置窗体。
下面就可以启动新建的虚拟器了,点击选中新建的名称为“ AVD ”的虚拟器,然后点击在新窗体中点击“ Lanuch ”启动此虚拟器,此时发现电脑摄像头亮了一下(虚拟器开始调用电脑摄像头),并且弹出了“摄像头设备选择”窗体,选择您的摄像头即可。
❷ 在Eclipse中安装android模拟器的详细步骤
打开安卓虚拟设备管理器,即 AVD Manager。点击图中的“New...”按钮新建安卓模拟器设备。在下一界面设置安卓模拟器的详细设备参数,包括内存大小等
打开窗体后,填写 AVD Name,即虚拟器的名称,此为必填项,并且只支持大小写英文、数字、下划线,不能与之前新建的 AVD 名称相同。然后选择 Device,选择适合自己的屏幕大小、分辨率。再选择 Target,即安卓系统版本。若出现 Device、Target 为空或无法选择,包括之前点击“New...”按钮时无效,请执行以下操作:
1.打开 SDK Manager(图3);
2.勾选自己需要安装的项目,图中仅为举例,点击“Install [n] packages”开始安装勾选,安装完成后会提示“Installed”(已安装)(图4-5);
3.安装或更新完成 Packages(安卓系统版本包)后,便可继续新建虚拟器。
勾选“ Keyboard ”、“ Skin ”,选择前置摄像头“ Front Camera ”为 Webcam0(会调用电脑摄像头)。后置摄像头“ Back Camera ”为任意一项即可。
设置 Memory Options(存储选项),在 RAM 右侧的文本框里输入运行内存大小(如512,即512M);然后在 VM Heap 右侧的文本框里输入缓存大小(如64,即64M)。
填写 Internal Storage(内部存储),即手机自带存储大小,然后继续填写 SD Card(SD 存储卡)大小,你可以选择右侧的下拉选项以改变数值的存储单位,还可以从已有的文件中选择 SD 卡。
其他选项可以保持默认,勾选“ Snapshot ”表示开启快照功能,勾选“ Use Host GPU ”即表示使用主机的 GPU。所有的设置完成后,点击“ OK ”按钮保存设置并关闭设置窗体。
下面就可以启动新建的虚拟器了,点击选中新建的名称为“ AVD ”的虚拟器,然后点击在新窗体中点击“ Lanuch ”启动此虚拟器,此时发现电脑摄像头亮了一下(虚拟器开始调用电脑摄像头),并且弹出了“摄像头设备选择”窗体,选择您的摄像头即可。
❸ 如何实现android静默安装
原理:
使用隐藏的系统API——installPackage。该方法在1.5版之后的android SDK中是看不见的,查看源码可以看到它设置了@hide属性,但在实际的运行包framework.jar中是存在的,因此只要能编译通过,安装到系统后是可以正常运行的。
步骤:
1. 从模拟器System\framework目录下提取framework.jar
2. 将framework.jar后缀名改为zip,解压后提取其中的classes.dex文件
3. 用dex2jar工具将classes.dex转成classes.dex.dex2jar.jar(注意新版本的dex2jar工具无法转换Android2.2的framework,建议使用dex2jar-0.0.7.8-SNAPSHOT,该工具可以从google官方站上下载到)
4. 将classes.dex.dex2jar.jar改名为classes.dex.dex2jar.zip解压取出android/content/pm/目录下的PackageManager.class,IPackageInstallObserver.class,IPackageDeleteObserver.class及相关的几个class文件备用
5. 找到android-sdk目录下的android.jar,改名为android.zip(注意改名前先备份一下),解压后将步骤4中取得的class文件覆盖到android对应的目录下,重新压缩成android.zip,并改名为android.jar
6. 这个时候android.jar已经是一个更新过的SDK了,重新打开eclipse工程,已经可以实现。
调用方法:
void android.content.pm.PackageManager.installPackage(Uri packageURI, IPackageInstallObserver observer, int flags, String installerPackageName)
说明:
1. 由于更改android.jar可能导致重新加载SDK失败,覆盖之前切记备份一下
2. 实际上该过程可以调用到任何hide属性的API,本文为了影响最小,只覆盖了installPackage相关的class
3. 下载android源码重新编译SDK也可以实现调用隐藏API,不过比较麻烦