1应用程序安装目录
系统应用程序所在目录:/system/app/apk
用户安装应用程序所在目录:/data/app/apk
注意:在模拟器中,每重启一次,/system/app/下的应用都会被还原,有时/data/app下也会被清除若在/system/app和/data/app下有重名的应用,不一定会启动哪一个,尤其是在adb install杀死正在运行的程序时,有时旧的就会被启动。
2用户数据所在目录:/data/data/应用包名/shared_prefs 配置文件;/data/data/应用包名/databases/ 库文件所在目录
3 SD卡对应目录:/sdcard/而我们需要处理的只是两个文件夹里面的内容:data/app –该文本夹里的文件可以全删,也可以自由添加自已所需安装的应用软件,刷机安装后可以自由删除。
system/app/17tabcom –在这个文件夹下的程序为系统默认的组件,可以看到都是以APK格式结尾的文件,但有些自制的ROM里面还有和APK文件名对应的odex文件。我们主要是针对该文件夹里的文件进行精简,如果有odex文件的,删除APK文件名时同时也删除与其对应的odex文件。
定制简单流程:
1下载相应的ROM
2下载签名工具,并且解压。
3把ROM内的所有文件用WinZip或是WinRAR解压到某一文件夹,为教程容易明白,我将这文件夹在这里起名为“NewsROM”,你自已喜欢怎样起名都无所谓。
4进入NewsROM文件夹,再进入dataapp目录,看这里是否有你所需的程序,不需要的请删除。你还可以添加你需要的默认安装软件。如:搜狗输入法,只需要把SogouImeapk文件直接拖放到压缩包dataapp目录内即可。
5进入NewsROM文件夹,再进入systemapp删除你不想要的组件、或是添加你需要的组件。由于有一些组件与其它组件是有依赖的,所以删除时请注意。但也不要怕,如果你删除的组件不对,刷机时最多是无法进入系统,你用完整ROM重新刷一次既可。一般不会变成砖的。
6删除、添加软件完毕,然后把 ROM 文件夹(NewsROM)拖动到anzhiname,APKMake/APKMakebat 即可(重新打包、自动签名)。在APKMake目录里打包签名完成后自动会生成NewsROMzip(刚才文件夹起名不同,这里生成文件名也不同),这个就是我们已精简的ROM了。
刷ROM
请如果 Recovery 已经准备好。请按严格安装以下步骤操作刷入 ROM:
1 把 ROM 文件复制到 SD 卡。
2 关机,然后按住 Home(小房子)启动手机,进入 Recovery 模式。
3 WIPE。
4 在 Recovery 中选择正确的 ROM 文件(ZIP)刷入。
5 重新启动即可。
定制注意事项
1细心、细心、细心
2为安全起见,建议只对data/app和system/app这两个文件夹内的文件做删除、添加。
3不知或是不太清楚要删除的文件是干啥的,那请保留不要删除。
4本文中的Android系统文件夹结构可能比较旧,如果碰到不知该文件是干什么的,建议搜索一下找答案。
5按照本教程来定制ROM,如果在定制过程自已失误删除相应的软件,那造成的后果最多也是无法进入系统,重新刷一个完整的ROM一般解决问题。还是那句话:刷机有风险,出问题自负。
简单来说odex的作用是优化后的dex 文件,可以提高加载速度。现在一般第三方ROM都把APK和odex合并起来了,可以加快软件的启动速度,预先提取,减少对RAM的占用,因为没有odex的话,系统要从apk包中提取dex再运行。如果你的odex导出可能有问题,没有跟原本配在一起的APK合并在一起,导致导入的时候安装不了。
ODEX优点
1刷完机首次进入系统的时间会缩短一些。文件的运行速度应该也有所提升。
2APK文件不能单独安装,并且如果反编译APK文件,一般也只能得到资源文件。可以说是起到一定的保护作用,避免被肆意修改和使用。这样做可以使其厂商保证一定的反盗版,因为没有dex文件的apk是无法正常安装的。
3会增加一些可安装应用的空间,虽然不是很多。
4某些机身内存太小的手机优化的时候可以删除dex文件来达到制作大内存包的目的,但是这种大内存包会使手机软件启动速度变慢。适合不追求速度,需要更多内存装软件的用户。
效果
Odex化后系统启动和程序运行速度大大提高,稳定性不变。因此推荐做Odex化。
一般来说官方rom都是odex化的rom(含Odex文件),而定制rom大部分都是deodex化的(无odex文件)。两者应该各有优点吧,貌似现在也没有统一的说法。官方rom大部分每个apk对应一个odex文件,而deodex化的rom里面只有一个apk,把odex转换成classesdex放到apk包里面了。所以 odex rom的apk+odex=deodex化rom的1个apk (简单地来说,其实就上一个合并的过程)
odex文件的生成
1、首先配置JAVA环境,相信大家都会
2、下载工具
adb工具包
dexopt-wrapper工具
3、用数据线将手机与电脑连接,手机中的设置----应用程序设置---开发下的USB调试、允许模拟地点要选上;将需要生成ODEX文件的apk文件放到 手机的data/local目录下(与dexopt-wrapper同一个目录)。
4:在电脑上(XP系统):
“运行”——cmd(回车)
输入 adb shell(回车)
Su(回车)
cd data/local(回车)
dexopt-wrapper apk odex (回车)(apk与odex中的同名)
就这样ODEX就生成了(看不到的话退出local再进入local)
5、剪贴出来用winrar删除apk 里的classesdex。
这样apk+odex就生成了。将这同名不同后缀的两文件拷到system\app 或data\app中修改权限重启手机就可用了。
Android的ROM中有很多odex文件,相对于APK中的dex文件而言这个odex有什么作用呢 如果你仔细观察会发现文件名时一一对应的,同时那些对应的apk文件中没有dex文件。这样做可以使其厂商保证一定的反,因为没有没有dex文件的apk是无常安装的,而厂商直接将odex和不完整的apk文件放到手机rom固化到/system/bin中可以让一般用户无常导出使用
第一步,去电脑登陆miuicom,登陆和手机里一样的小米账号,点击解锁,根据提示操作,下载安装解锁工具到电脑上,就可以解除boot锁,但是解锁需要时间,不一定当时就可以解除的。第二步,在miuicom官网主页点击下载,选择手机型号版本,进入后在这个页面先下载开发版系统包,然后在这个页面左侧点击教程,选择线刷方法,在教程里下载刷机工具miflash安装到电脑上,在电脑上将系统线刷为开发版的系统。
关于APK,DEX的介绍
当我们编译一个安卓项目的时候,整个项目会被打包成一个 apk文件。这个文件其实是一个标准的zip文件,因此可以用解压缩工具打开。这个apk文件一般都包含程序的代码(在classesdex文件中), 资源文件, 证书, manifest 文件等。 其中对我们最重要的是classesdex文件,因为编译后的字节码(bytecode)都是放在这个文件中。我们后面讲的反编译就是针对这个dex文件来的。
反编译普通的APK文件:
对于普通的APK/DEX文件的反编译,其实工具有很多, 包括:
ByteCode Viewer: 一个可视化的集成工具,说实话,不太好用,不够稳定,生成代码质量中等。
dex2jar + jd_gui: 这两个工具组合还可以, 用起来比ByteCode Viewer麻烦一些,但比较稳定,生成代码质量中等。
在线反编译工具JADX: http://wwwjavadecompilerscom/apk , 这是基于SourceForge上的JADX的开源工具来实现的。本来以为在线反编译质量不会好,但出人意料的是:JADX是我发现的最好的反编译工具, 不但使用简单(直接上传,转换,下载就ok),而且反编译出来的代码质量很高,特别是变量命名方面,可读性很不错。
反编译ODEX文件:
Android 50 Lollipop以后,Google用ART代替了以前的Dalvik,对于普通的app来说我们仍然可以用上面的方法来把dex文件反编译成Java源代码。但对于系统预装的App,特别是类似应用商店,播放器等, 你会发现这些应用的apk文件中找不到对应的classesdex文件,而是会发现在其子目录下有个odex文件。 那如何反编译这个odex文件呢?我通过google查了查,知道应该用baksmali,但从github上下载了几个版本都不行,报各种不同错误。经过反复搜索和尝试,终于找到了这篇文章
: http://wwwnaldotechcom/how-to-deodex-applications-on-android-5-0-lollipop/ 。 具体方法如下:
1 从这里下载工具包, 解压缩到本地。 这里的baksmali的版本是203 不同版本的baksmali针对的Android内核不同。有时候高版本反倒不好用。
2 打开工具所在目录, 按住shift键, 点击鼠标右键,打开windows命令窗口
3 把 odex文件拷贝到该目录
4 在命令窗口运行: oat2dexbat odex 正常情况下,应该显示OK等信息。如果报错的话,说明这个文件无法转换,后面的也不用试了。
5 运行 oat2dexbat odex tempdex 运行后会创建一个tempdex文件。
6 运行 java -jar baksmali-203jar -a 21 -x tempdex -o source 运行后会创建一个source的文件夹,并将tempdex反编译到该文件夹。-a 21 表明的是Android内核的版本21
7 运行 java -jar small-203jar -a 21 source -o classesdex , 反编译为classesdex文件。
需要注意的是:由这种方式反编译成的classesdex 文件相比原生的classesdex 还是缺少了些信息,因此反编译这种classesdex 文件后生成的java代码可读性会更差些。
8 用在线工具JADX 来把 classesdex 最终反编译为java代码。
你下载的自带相机是否经过ODEX化,也就是ODEX合并,如果合并过的就可以直接通过re管理器从内存卡复制进手机的system/app文件夹,改权限211。如果没有合并过,就请别人再给你提取出ODEX文件,然后两个都复制进system/app,都改权限。两种都要重启后才能生效!
可以采用该rom对应手机厂商的刷机工具或360刷机助手等进行刷机,rom包是无需解压的,至于提取软件,我知道的是,刷完root后由RE文件管理器进入其指定文件夹进行提取,当然,最傻瓜也最简单的方法是用备份软件对软件进行备份,到备份文件夹下你想要的apk都在那
也可采用网上的方法:
(1)、安装 apk 文件反编译及回编译工具 v180 测试版
1、直接运行安装
安装路径可以丌修改,直接默认,然后确定即可 2、这一步直接回车
3、顺利安装过程
4、接下来直接输入 2 然后回车
5、两个选项随便选一个即可
6、最后顺利安装成功
7、安装完成,接着直接迚入系统盘根目录(我癿是 K 盘)即安装目录,就可以看到安装癿文件。
8、丌过我们丌用迚入这个文件夹运行,它癿功能已经集成到右键菜单了,这个很方便!
9、呵呵,现在我们可以看到 apk 程序自身癿图标了
(2)首先将下载下来癿官方原版癿刷机包 ROM 解压出来(如下图)
(3)接下来在 system\app 路径下找到自己想要癿 Calculatorapk 和 Calculatorodex 这两个文件直 接复制到 system\framework 目录下
(4)右键 odex 文件合并到 apk
(5)直接按回车键确定即可,等它执行结束自动关闭窗口后,在 framework 文件夹下就可以看到刚 刚合并成功癿 Calculatorapk 文件
到这里可能会有童鞋问,是丌是可以将合并癿 apk 程序直接复制到手机上安装了! 呵呵,这个想法丌错。如果直接复制安装癿话,会提示说:应用程序未安装。 因此,还有很重要癿一步——签名! (6)签名 apk 程序 直接选中 Calculatorapk 然后右键 选择“签名 apk 文件”
等等其结束后,你就会发现文件夹下生成了 Calculator-signedapk 这个文件
至此, apk 文件提取合并并签名成功, 这下子可以直接把这个apk进行安装了
欢迎分享,转载请注明来源:品搜搜测评网