android APK提取内置软件odex转dex

细心的网友可能发现android的ROM中有很多odex文件,相对于APK中的dex文件而言这个odex有什么作

用呢? android123提示大家,如果你仔细观察会发现文件名时一一对应的,同时那些对应的apk文件中

没有dex文件。这样做可以使其厂商保证一定的反盗版,因为没有没有dex文件的apk是无法正常安装的

,而厂商直接将odex和不完整的apk文件放到手机rom固化到/system/bin中可以让一般用户无法正常导

出使用。

很多网友可能想到的是合并odex和apk变成apk中包含dex文件的,这样合并后最终apk文件安装

在/data/中,而rom存放时在 /system/bin中,所以最终导致了用户可装在android手机中的软件会变

少,占用系统空间。

用android手机会遇到如何将APK制作成内置软件,即将APK软件分解xxx.apk和xxx.odex并放到/system/app,看教程:android 制作内置软件制作odex方法

当你看到手机内置软件有好的软件想提取出来,就要将xxx.odex转为classes.dex,压缩到xxx.apk里,再签名apk。

apk实际是一个zip文件,可用压缩工具直接打开或解压,也可以更改后缀名为 .zip。

该教程基于 XP SP3 32位的系统下试验制作!

准备软件和文件:

odex转dex要在Java环境下制作,下载软件java jdk 7

官网下载下windows x86 windows-i586.exe的,要点选ACCEPT才能下载,或点此直接下载

下载baksmali.jar和smali.jar,版本是1.2.8

如果你的电脑安装了360,可能会出现提示,点选允许所有操作和不在提示,或把它卸载了安装完再装回去。

将手机/system/下的framework整个文件夹复制到电脑上,应为到时需要/system/framework下的某些文件。

下载:framework,仅供提供的calculator.apk和calxulator.odex使用,提取自己手机内置软件的用自己手机的framework。

安装好Java jdk7后在D盘下建一个文件abc,把baksmali.jar和smali.jar放到文件夹下,把framework里的所有文件也放到abc下,把需要提取的内置软件xxx.odex放到abc下,

唤出CMD: 开始—运行—输入CMD后点确定或按ENTER回车键,唤出CMD后输入下面命令后按回车键:

d: 进入D盘

cd abc 进入abc文件夹

首先通过odex生成class文件,命令如下:

java -jar baksmali.jar -x calculator.odex

为了输入方便也可将odex命名为a.odex

java -jar baksmali.jar -x a.odex

执行完上面这行命令后,会生成一个out 文件夹里面是calculator.odex的class文件。

参考:出现问题,根据提示可以从rom的 /system/framework 中的xxx.jar放到pc上的java环境变量中一起生成。 已将framework下的所有文件放到abc下,不成功也不是这个问题。

通过class生成classes.dex 文件,命令如下:

java -Xmx512M -jar smali.jar out -o classes.dex

注意输入命令区分大小写:Xmx512M, 和转下一个odex文件前要删除out文件夹

成功的命令图如下:

输入代码麻烦则可下载批处理:Odex转class转dex.zip,将解压得到的批处理放到abc文件夹下,将要处理的xxx.odex拖到odex转class转dex.bat文件的图标就会自动生成classes.dex了。使用该批处理“abc”可放到任意盘和位置都可

bat批处理文件实际上是txt文件,可用记事本等编辑器打开,或改后缀名为 .txt ,bat批处理是把你在CMD里输入的所有代码保存到记事本,再改后缀名为bat即可。如上面calculator.odex制作为bat,代码如下:

d:

cd abc

java -jar baksmali.jar -x calculator.odex

java -Xmx512M -jar smali.jar out -o classes.dex

pause

用记事本保存改后缀名为bat后双击执行即可,麻烦的是处理不同的odex文件要将calculator.odex改代码为要处理的odex文件名。

odex转class转dex.bat的代码如下:

cd /d %~dp0

java -jar baksmali.jar -x %1

java -jar smali.jar out/ -o classes.dex

rd out /Q /S

pause

odex转dex成功后将class.dex放回apk压缩包里不能使用,apk要签名才可使用.

将calculator.apk解压到calculator文件夹,将生成的classes.dex放到calculator文件夹,

下载签名批处理:auto-sign,解压,把解压出来的 APK签名.bat和_data文件夹, 和calculator文件夹放到任意盘根目录,建议C盘,拖动calculator文件夹到APK签名.bat的图标上就会自动签名和打包回apk。

ODEX转dex教程二:

下载并安装软件java jdk 7 点此下载

安装好Java jdk 7 ,将 全自动 odex 2 dex解压到任意盘任意目录,将要处理的所有xxx.apk和xxx.odex放到file文件夹里,将手机里/system/framework下的所有文件复制出来放到make文件夹下,双击打开 开始.bat ,生成的对应程序文件夹在OK文件夹下,用auto-sign批处理签名打包即可。

下载签名批处理:auto-sign,解压,把解压出来的 APK签名.bat和_data文件夹, 和OK下的文件夹放到任意盘根目录,建议C盘,拖动文件夹到APK签名.bat的图标上就会自动签名和打包成apk。

亦可使用 全自动 odex 2 dex(原)+ 远离命令行和批处理软件: apktool beta 1.3.5亦即apktool_GUI_1.3.5.exe,将apk拖到签名栏即可。apktool beta 1.3.5运行需安装JAVA,软件运行如下图:

教程二结束!

android内置软件提取教程结束!

重要的问题:当你将一个apk用压缩软件解压后会看到某些APK有一个 lib 文件夹,这个就是驱动文件,官方rom是放在 /system/lib 下 的 .so 文件就是apk的驱动。官方ODEX化的apk把驱动全部都放到了/system/lib 里,所以想知道哪些 .so文件是哪个apk的很难,没有驱动apk不能正常运行的。 不带lib 的apk就没有问题!

android apk 提取,android APK提取内置软件odex转dex相关推荐

  1. android系统版本卸掉,使用内置软件卸载最新版本的Android

    Power Software Park提供了最新版本的内置软件卸载Android. 一个实用且功能强大的手机软件,它可以帮助您卸载手机中无用的系统程序,使您的手机更加简单方便,并且不会被太多无用的混乱 ...

  2. 使用adb命令uninstall卸载不掉手机上的apk时,可以卸载内置app路径

    使用adb命令uninstall卸载不掉手机上的apk时,可以卸载内置app路径 adb uninstall + 包名 Failure [DELETE_FAILED_INTERNAL_ERROR] 直 ...

  3. XT800内置软件的更换和删除

    http://www.hiapk.com/bbs/thread-94631-1-2.html 注意:此贴的基础是:固件 :2.0.1,软件 :15.10.1 俺入手XT800几天了,在这里学到了不少东 ...

  4. 玩机搞机---卸载内置软件 无root权限卸载不需要的软件 安全卸载

    目前的机型出厂都会自带一些内置软件.个别的还无法删除.各种弹窗广告 等等占用系统资源.操作卡顿.而很多卸载软件有需要root权限才可以运行.那么有没有方法可以无需root就可以卸载内置软件呢.答案是有 ...

  5. 安卓玩机搞机技巧综合资源-----干掉手机广告 禁用 冻结 关闭内置软件【八】

    接上篇 安卓玩机搞机技巧综合资源------如何提取手机分区 小米机型代码分享等等 [一] 安卓玩机搞机技巧综合资源------开机英文提示解决dm-verity corruption your de ...

  6. 无需root对oppo内置软件卸载方法

    对于oppp的coloros系统,好用是好用,但是有太多无用的内置软件和频繁弹出的快应用,使人发麻,今天头一次发帖,多多关照.废话不多说.上代码教程,代码 oppo最牛逼,但不是太洒脱. 第一步,需要 ...

  7. 小米自带360怎么卸载_每日话题:小米下架360产品 卸载内置软件功能好吗?

    站长网(www.admin5.com)9月30日消息,近日小米应用商店.联想乐商店纷纷以用户投诉举报应用被卸载为由下架了360全线产品. 1 小米公司发布声明称,日前接到大量网友举报称,360手机助手 ...

  8. 小米电视精简,去开机广告,系统更新,删除无用内置软件等

    小米电视精简,去开机广告,系统更新,删除无用内置软件等 首先安装第三方桌面 接下来打开电视的开发者模式(点击'产品型号'7次) adb调试选择允许(帐号与安全-ADB调试) PC上安装"线刷 ...

  9. win10打开内置软件时弹出提示“无法注册包”

    问题描述: 1.Edge浏览器.微软商店无法启动,打开图片等需要内置软件提示无法注册包 2.Cortana小娜无法启动,Cortana搜索框无法搜索 结局方法: 1.以管理员身份运行powerShel ...

最新文章

  1. Linux系统支持的目录文件有,【技术支持】linux操作系统有哪些文件和目录操作相关命令?...
  2. 安卓linux终端termux下载,高级手机终端app
  3. 2017校赛 问题 D: 我知道了,你知道了吗?【递归】
  4. vue elementUI表单输入时触发事件@input
  5. leetcode 303. 区域和检索 - 数组不可变(Java版)
  6. JavaScript中关键字和保留字有哪些
  7. .NET项目升级手记:可为空引用
  8. 链表面试题3:将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成 的。
  9. leetcode 91. 解码方法(dp)
  10. shiro使用jdbc_realm登录验证
  11. 你为什么喜欢VIM?
  12. 关于src和background
  13. Android可视化环境配置搭建方法
  14. Source Map的概念
  15. Laravel执行seeder报错
  16. HDU1757(矩阵快速幂+简单的矩阵构造)
  17. 用python打开\显示\保存图像
  18. 注册石墨文档无法连接服务器,石墨文档没有访问权限是怎么回事?权限解决方法看这里!...
  19. 矩阵连乘——动态规划算法
  20. 引用类型属性自动注入-byName,byType,多个配置文件

热门文章

  1. k8s部署springcloud架构的一些心得体会
  2. 计算机主机只有一块硬盘,电脑只有一个硬盘怎么解决
  3. 股票历史数据-股票价格查询,股票历史交易价格查询
  4. 好学6招快速减大象腿
  5. 成都信息工程大学教学平台无法上传文件
  6. iosepub阅读器_iOS苹果手机上最好的3个mobi阅读器
  7. 什么是GeoJSON?
  8. 初级Java程序员 - 自我总结
  9. C# 将Base64转换为图片并保存到Image数组
  10. 基于asp.net116教师工资管理系统