配置安卓模拟器dex文件不被优化成odex

 最近做一个模块,需要将apk里面加载的dex文件dump出来,所以需要配置让dalvik不要把dex文件优化成odex。

1. 配置build.prop

主要是通过修改文件/system/build.prop里面的配置。

(1) dalvik.vm.dexopt-flags

本参数控制Dalvik虚拟机的程序代码校验和优化。可填写的值有m、v和o。
m为标准选项,可以是m=y或m=n。若m=y则启用不安全代码的校验和托管代码的优化。兼容性和安全性最高。
v为校验选项,可与o并存。可以是v=a或v=n。若v=a则表示校验所有代码,v=n则关闭代码的校验。
o为优化选项,可与v并存。可以是o=v或o=a。若o=v则表示优化以校验过的代码,o=a则表示优化所有代码。

这里我们配置成:dalvik.vm.dexopt-flags=v=n,o=v,表示关闭代码校验,并只优化校验过的代码,也就是所有代码都不会被优化。

(2) dalvik.vm.checkjni

这里我们配置成:dalvik.vm.checkjni=false,这个会把checkjni设置成false

2. 把配置持久化到模拟器

(1) 首先重新挂载系统分区,使系统分区可写。如果不执行这个,会发现没法修改build.prop文件。

adb remount

(2) 接下来,进入模拟器的命令行:

adb shell

(3) 将配置写到build.prop:

echo "dalvik.vm.dexopt-flags=v=n,o=v" >> /system/build.propecho "dalvik.vm.checkjni=false" >> /system/build.prop

这样,配制就改到模拟器里面了,验证之后发现dex果然没有被转化成odex。

可是在重启模拟器之后,发现build.prop里面的改动都没有了。

在网上搜了一下,参考了这个stackoverflow的提问:http://stackoverflow.com/questions/15417105/forcing-the-android-emulator-to-store-changes-to-system

具体步骤如下:

(1) 将system.img复制到一个地方,

(2) 用下面的命令启动模拟器:

emulator -avd [你的模拟器名字] -qemu -nand system,size=[模拟器需要的空间,16进制],file=[刚才复制的目录]/system.img
例如:
emulator -avd Galaxy_Nexus -qemu -nand system,size=0x1f400000,file=/home/fx/.android/avd/Galaxy_Nexus/system.img

(3) 按照之前的步骤修改build.prop

(4) 用这个命令关闭模拟器:

adb -e emu kill

这样,下次正常启动模拟器的时候(不必再用上面步骤2里面的命令),发现修改的内容已经被持久化到build.prop里面。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索avd问题
, 优化
, avd空白
, 模拟器
, dalvik
, avd 常见错误
, avd 启动报错
, qemu
, 代码
, android n avd
, 配置
, system
, build
, dex
build prop
odex转dex、dex odex、odex转dex工具、odex2dex、android dex odex,以便于您获取更多的相关知识。

时间: 2024-10-28 10:06:09

配置安卓模拟器dex文件不被优化成odex的相关文章

如何配置安卓模拟器 dex文件不被优化成odex

  APK是一个程序压缩包,里面有个执行程序,ODEX优化就是把包里面的执行程序提取出来,就变成ODEX文件,因为你提取出来了,系统第一次启动的时候就不用去解压程序压缩包的程序,少了一个解压的过程.这样的话系统启动就加快了. 最近做一个模块,需要将apk里面加载的dex文件dump出来,所以需要配置让dalvik不要把dex文件优化成odex. 1. 配置build.prop 主要是通过修改文件/system/build.prop里面的配置. (1) dalvik.vm.dexopt-flags

安卓模拟器上安装卸载apk文件教程

安卓模拟器是一个能在Windows平台模拟安卓手机系统的模拟器.安卓模拟器能在电脑上模拟出安卓手机运行环境,让你在电脑上也能体验安卓游戏和应用. 如果我们想要运行一些程序,但又不想在自己的手机上运行,当然就可以在安卓模拟器上实验一下啦,一起来看一下 首先确保自己的电脑上安装有模拟器,安装前要配置JDK,下载ADT和SDK还有eclipse软件. 我们打开自己的模拟器,如图 我现在想要安装一个Yoo桌面的软件,我从网上下载了一个Yoo桌面的apk文件.注意文件的后缀一定要是apk. 为了后面再命令

安卓hosts文件-怎样修改 安卓模拟器的 hosts文件啊?

问题描述 怎样修改 安卓模拟器的 hosts文件啊? 如题,怎样去修改模拟器中的hosts 文件啊?是 永久修改,不要重启浏览器后就 还原的那种. 解决方案 root之后直接用shell修改就行了

安卓模拟器安装APK文件图文教程

  1:打开安卓模拟器,在网上下载好的apk格式软件.右击软件,就会看到第一行有"open with.....". 2:就会看到一个小窗口. 3:当你安装好的时候,你的电脑右下角会浮出你安装好的提示. 4:打开软件我的应用中多了一个软件,QQ软件. 5:试试打开看能不能正常运行. 6:你可以到应有程序设置中看到多了一个qq软件.

给力助手一键卸载安卓模拟器

1.在非常多种情况下,您会需要用到这个卸载教程,比如之前执行过不成功的蓝手指模拟器安装;或是破解某个重要软件未能成功,连累模拟器也必须重装才能尝试再次破解;再或者因为疯狂安装卸载了不计其数的应用或游戏导致系统盘空间不够,模拟器也变得缓慢迟滞--关于卸载,您必须记住的一点就是:没有干净彻底的卸载,就无法再次成功安装.启动给力助手,还是进入环境检测的页面,无论之前您是否执行过标准卸载或手动硬删除,只要系统里存在影响再次安装的残余文件,给力助手都能马上替您找到,如下图: 2.由于安卓模拟器是在Win系

蓝手指安卓模拟器安装教程

蓝手指安卓模拟器其实就是BlueStacks模拟器,很多人喜欢叫做蓝手指安卓模拟器.使用蓝手指安卓模拟器可以结合给力助手,下边给大家讲解一下安装使用过程! 蓝手指安卓模拟器安装教程 第一步.电脑硬件环境的检测: 蓝手指对硬件环境的要求因版本不同而略有不同,早期的Bata版对于硬件要求更低一些,而后期的Bata-1版则对当前的主流机型的硬件配置更为融合,一般而言,只要满足双核以上CPU(哪怕入门级的AMD或赛扬系列);2GDDR内存(及以上);一块支持OpenGL 2.0技术的显卡(目前已知的最低

给力助手一键安装安卓模拟器教程

1.安卓模拟器本身对硬件有一定要求:如显卡要支持OpenGL 2.0以上的型号,内存不小于2G,处理器最好是双核等等,和必备的软件环境:如Windows Installer 4.5;.NET Framework 2.0 SP2等,很多用户并不懂得这些,所以运行给力助手后先要点击左面那个橘红色的"环境检测"按钮,助手会快速对您的系统作出评估,并在主界面上生成一份报告,如果其中某项是红色字体显示的,那就说明以目前情况下,安装蓝手指模拟器不会成功,如果您本人是个计算机擅长者,那么按照这份报告

安卓 开发-【急】安卓开发·创建安卓模拟器的问题(补充图)

问题描述 [急]安卓开发·创建安卓模拟器的问题(补充图) 小白一只..配置了各种变量之后创建安卓模拟器,创到一半卡住了.卡住的步骤见下图.画圈的选项为什么没法选?没法选就没法下一步啊. 怎么办呐?求各位前辈解答.(?_?) 解决方案 没有虚拟CPU,即镜像文件,你看看我这个选择,你试一试 解决方案二: http://www.cnblogs.com/yc-755909659/p/4080645.html 多学学如何查阅资料. 解决方案三: 对于镜像文件,在配置是也是需要安装的,有可能你没有安装,你

Android Studio 1.0.1 + Genymotion安卓模拟器打造高效安卓开发环境

我们开发安卓大多是使用Eclipse和安卓SDK中自带的安卓模拟器.当然,Google早就推出了自己的安卓开发环境--Android studio,在不久前,Google发布了Android Studio 1.0,个人感觉使用起来还是不错的.之前下载过一些Android studio的早期版本,但是都因为"网络问题"而安装失败,无奈删除.而这一次,Android studio 1.0下载后,不需要再联网下载东西了,直接解压就可以使用.    一.Android Studio 1.0.1