导航:首页 > 版本升级 > baksmali最新版本

baksmali最新版本

发布时间:2025-10-18 02:39:36

❶ 合并odex和apk的时候一直出不来out文件

您好,在做合并odex的工作前你必须先装好java JDK/JRE和配置好环境变量,安装文件和配置方法网上有。下载好的smali-1.2.2.jar、baksmali-1.2.2.ja文件和framework目录中提取出来的5个文件还有你要合并的apk和odex文件必须放在同一个文件夹中。最好在C盘以外的其它盘的根目录下建立一个文件夹放进去,容易查找,比如放到D盘的apktool文件夹中(D:/apktool)。然后开始菜单——>运行 输入CMD回车。现在就需要在命令提示符中先定位到你放所有文件的那个文件夹(D:/apktool),方法:命令提示下输入D:回车,然后输入CD apktool回车,然后接着依次运行下面第二条、第三条命令即可。还有就是有的apk合并了放到其它系统中可能会出现问题,比如Settings.apk。
合并odex和 少dex的apk 为完整的apk文件
1. 下载 http://smali.googlecode.com/files/smali-1.2.2.jar 和 http://smali.googlecode.com/files/baksmali-1.2.2.jar,既然是需要**,还需要这个 apk 所在的 rom 里面的一些 jar 文件,都在 /system/framework 里面: core.jar, ext. jar, framework. jar, android.policy. jar, services. Jar 。一般在 /system/framework 目录中。
2 . 通过odex生成class文件
java -jar baksmali-1.2.2.jar -x android123.odex 注释:baksmali-1.2.2就是你刚下载好的两个文件之一,在这的名字必须和下载的那个相应文件的名字一样。把命令中的android123.odex改成你要合并的那个odex文件名称,比如:ADWLauncher.odex,此条命令和下条命令最好复制到命令提示符,手输容易出错。执行完上面这行命令后,会生成一个out 文件夹里面是android123.odex的class文件。出现问题,根据错误提示可以从rom的 /system/framework 中的**.jar放到同一文件夹中。
3. 通过class生成classes.dex 文件。
java -Xmx512M -jar smali-1.2.2.jar out -o classes.dex 注释:smali-1.2.2.jar也必须和下载好的相应文件名字一样。
4. 将classes.dex放到apk文件
因为apk是zip的mime编码类型,使用winzip或winrar直接拖入到apk改名为zip的压缩包中即可。
5. 不要忘记了签名,使用jdk中的arsigner和keytool打包重新签名即可。
如果按上面说的做了还出现错误那就把framework-res.apk文件也放到同一文件夹,在执行上面步骤2命令前先执行下apktool if framework-res.apk命令。

❷ 如何反编译Android 的apk/dex/odex,获得源码

关于APK,DEX的介绍

当我们编译一个安卓项目的时候,整个项目会被打包成一个 .apk文件。这个文件其实是一个标准的zip文件,因此可以用解压缩工具打开。这个apk文件一般都包含程序代码(在classes.dex文件中), 资源文件, 证书, manifest 文件等。 其中对我们最重要的是classes.dex文件,因为编译后的字节码(bytecode)都是放在这个文件中。我们后面讲的反编译就是针对这个dex文件来的。

反编译普通的APK文件:

对于普通的APK/DEX文件的反编译,其实工具有很多, 包括:

❸ 如何修改framework下面的odex文件

android系统,一般分为工程版本和用户版本。而一般用户拿到的系统,都是用户版,用户版的直觉表面上的区别就是/system/framework和/system/app下的jar和apk文件都被odex化了。
对于/system/app下的odex,我们使用baksmali工具,就可以反编译出smali文件,我们对些smali文件做修改之后,在目标机器上,使用dexopt-wrapper工具进行odex化之后,push到/system/app下就ok。但是,对于framework下面的文件,一般不能如此修改,修改之后,push到/system/framework下面的时候,一般都会把系统搞挂掉。如果framework下面文件不能修改,那么玩android系统不是缺少很多乐趣?
[Toturial][Windows] How Editing The ODEX framework files?
这个方法需要改进一下就可以适合各种机型了。
framework下面的odex进行反编译之后,在打包,push到机器上运行不起来主要有两点原因。
第一点,就是framework下面的jar包,很多都是dalvik虚拟需要使用的BOOTCLASSPATH,android对此有特别的安全机制,所有我们进行odex化的时候,需要加入$BOOTCLASSPATH
第二点,就是签名的问题,如果前面不对,那么还是会启动fail的,这个我们原有的odex文件头就可以解决。
具体的方法,我们以下面一个例子,修改android.policy.odex为例子。
我们提取目标机器扰坦渗中的android.policy.odex和android.policy.jar的,然后使用baksmali,修改smali之后,使用smali工具之后,打包成classes.dex,然后替换到android.policy.jar中。
下面开始我们的正文缓脊方法:
1,在/data/local/tmp中建立一个zangcf_changed目录和zangcf_original目录
adb shell
cd /data/local/tmp
mkdir zangcf_changed
mkdir zangcf_original
exit
2,把原始文件和修改后的文件到目标机器
adb shell
adb push ./zangcf_changed/android.policy.jar /data/local/tmp/zangcf_changed/
adb push ./zangcf_original/android.policy.jar /data/local/tmp/zangcf_original/
adb push ./zangcf_original/android.policy.odex /data/local/tmp/zangcf_original/
exit
3, 准备执行环境
adb shell
su
mount -o rw,remount /system
chmod 777 /system/bin
chmod 777 /system/framework/
exit
exit
adb push ./dexopt-wrapper /system/bin
adb shell
su
chmod 777 /system/bin/dexopt-wrapper
exit
exit
4, 进行odex化
adb shell
su
cp /data/local/tmp/zangcf_changed/android.policy.jar /system/framework/android.policy.jar
dexopt-wrapper /system/framework/android.policy.jar /system/framework/new_android.policy.odex $BOOTCLASSPATH

cp -f /sdcard/信谈amestris_original/android.policy.jar /system/framework

chmod 777 /system/framework/android.policy.odex
chmod 777 /system/framework/android.policy.jar
chmod 777 /system/framework/new_android.policy.odex
exit

5, 原文件的头。
adb shell
su
busybox dd if=/system/framework/android.policy.odex of=/system/framework/new_android.policy.odex bs=1 count=20 skip=52 seek=52 conv=notrunc
cp /system/framework/new_android.policy.odex /system/framework/android.policy.odex
exit
exit

6, 删除临时文件和修改文件属性
adb shell
su
chmod 644 /system/framework/android.policy.odex
chown root.root /system/framework/android.policy.odex
rm /system/framework/new_android.policy.odex
exit
exit

7,ok,然后重启
adb reboot

❹ 怎么deodex系统软件

一、什么是odex文件? 简单来说odex文件是由apk中的classes.dex提取出来,以提前运行,加快软件的运行速度以及系统的开机速度。一般来说,odex化的软件都是位于system/app以及system/framework目录下的系统软件或jar文件。通常,官方刷机包的系统软件是odex化的,定制的刷机包是无odex文件的。 二、什么是deodex?为什么要deodex? deodex就是odex化的逆向过程,即将odex文件转换为dex文件放回apk里。此举能在一定程度上减少system空间的占用,并能更加容易地修改软件,例如修改框架文件(framework.jar等)。 三、如何deodex软件? 前几年有一款一键deodex软件叫做xUltimare,但后来因为它的版本停滞不前和Android的更新导致deodex报错越来越多,Android Kitchen也一样。MIUI中的某些app这些软件怎么都不能合并odex,所以就必须手动合并了。 前提条件:电脑上安装了JAVA并且已经进行了环境变量。具体可以网络查找资料。除此之外,还需要谷歌官方提供的文件, 要下载smali-X.X.X.jar和baksmali-X.X.X.jar两个文件(X.X.X表示谷歌官方提供软件最新版本的版本号),倘若下载不了,可以使用本帖最后提供的smali-2.0.3.jar和baksmali-2.0.3.jar。为了在后文使用代码方便,建议重命名将后面的版本号删掉。 以下为步骤 ①将smali.jar、baksmali.jar、将进行转换的odex文件放到同一目录下。新建system文件夹,在里面放入刷机包里的system/framework(此步是为了添加框架文件,其实只需要framework里的odex文件就足够了,把整个文件夹放进去是出于方便考虑)。 ②打开cmd,并且用cd命令转到刚才的目录。 ③在cmd里输入 java -jar baksmali.jar -d ./system/framework -x AppName.odex 复制代码 注:此处AppName.odex是指待转化的odex文件名称。这一步就是解决报错的关键,baksmali是不会自主识别目录中的框架文件的,所以必须主动加载 若cmd未报错,此时目录下应当出现了一个名为out的文件夹 ④在cmd里再输入 java -Xmx512M -jar smali.jar out -o classes.dex 复制代码 无意外的话此时由odex文件生成的classes.dex已经在目录下生成 ⑤接下来以winrar或其他压缩软件为打开方式,直接打开原odex文件所对应的apk文件 直接将classes.dex拖拽进apk就行了 ⑥签名 此步骤是可选的,若是系统软件,无需签名,直接放入system/app使用即可(记得改权限),大可不必签名。 以上为deodex一个apk的全过程,合并jar也是一样的方法。此方法除windows适用之外,linux也可参考。

❺ 如何对APK进行 Deodex

一、什么是odex文件?
简单来说odex文件是由apk中的classes.dex提取出来,以提前运行,加快软件的运行速度以及系统的开机速度。一般来说,odex化的软件都是位于system/app以及system/framework目录下的系统软件或jar文件。通常,官方刷机包的系统软件是odex化的,定制的刷机包是无odex文件的。
二、什么是deodex?为什么要deodex?
deodex就是odex化的逆向过程,即将odex文件转换为dex文件放回apk里。此举能在一定程度上减少system空间的占用,并能更加容易地修改软件,例如修改框架文件(framework.jar等)。
三、如何deodex软件?
前几年有一款一键deodex软件叫做xUltimare,但后来因为它的版本停滞不前和Android的更新导致deodex报错越来越多,Android Kitchen也一样。MIUI中的某些app这些软件怎么都不能合并odex,所以就必须手动合并了。
前提条件:电脑上安装了JAVA并且已经进行了环境变量。具体可以网络查找资料。除此之外,还需要谷歌官方提供的文件, 要下载smali-X.X.X.jar和baksmali-X.X.X.jar两个文件(X.X.X表示谷歌官方提供软件最新版本的版本号),倘若下载不了,可以使用本帖最后提供的smali-2.0.3.jar和baksmali-2.0.3.jar。为了在后文使用代码方便,建议重命名将后面的版本号删掉。

以下为步骤

阅读全文

与baksmali最新版本相关的资料

热点内容
excel表如何查看文件大小 浏览:775
obd文件 浏览:288
文件打包为什么还附带电脑的内容 浏览:15
刺客信条1java手机下载 浏览:78
java编程思想看不太懂 浏览:958
revit加载族在哪个文件夹里 浏览:712
表单制作用什么数据库 浏览:991
php输出json数据 浏览:629
传世充值文件是哪个 浏览:989
苹果7关闭自动备份文件 浏览:404
cad怎么统一打印所有文件 浏览:958
华为账号如何擦除数据 浏览:927
阳光守护是哪个文件夹 浏览:982
js选项卡切换带左右焦点切换 浏览:106
配置文件主要元素 浏览:522
tp隐藏wifi密码 浏览:417
js自动刷新 浏览:333
电信网络电视4514 浏览:278
编程服务软件是什么 浏览:519
word文件怎么选择页面编辑 浏览:645

友情链接