设为首页收藏本站

Scripts 学盟

 找回密码
 加入学盟

QQ登录

只需一步,快速开始

查看: 2471|回复: 3
打印 上一主题 下一主题

零基础Android 2.3固件美化全攻略系列之一-APK反编译、重编译 [复制链接]

Rank: 7Rank: 7Rank: 7

跳转到指定楼层
1#
俊俊 实名认证  发表于 2011-7-27 14:46:27 |只看该作者 |倒序浏览
固件UI美化只是集中在三个文件上:framework-res.apk、SystemUI.apk和Launcher2.apk 后两个在固件解包后的\Temp\system\app文件夹下,前者在固件解包后的\Temp\system\framework文件夹下。要进行深层美化、定制自己的UI,必须修改这三个apk的配置文件中的代码和图片素材,要修改代码必须对apk进行反编译。
在开始修改之前,先了解下几个关键名词:

编译:利用编译程序从源语言编写的源程序产生目标程序的过程。
反编译:编译的逆过程。
.odex:使厂商保证一定的反盗版,因为没有没有odex文件的apk文件是无法正常安装的。

PS:不完整的apk是无法正常反编译的,不反编译apk是无法修改源码的。
本来合并apk是件麻烦事,现在我提供一个我修改的odex文件合并工具,只需要把odex和apk放在其目录下便可以自动合成完整的apk.同时也提供昂达2.3固件提取的framework-res.apk、SystemUI.apk和Launcher2.apk下载.大家可以自行选择.

PS:合并后的apk是不能安装的,因为没有正确的签名。


一、合并odex和apk文件

①去下载并安装JDK和Java(这个是必须的,后面反编译和重编译还要用到);如已安装好可略过。。
JDK下载地址:
http://download.oracle.com/otn-p ... 26-windows-i586.exe
Java下载地址:
http://www.java.com/zh_CN/
②解压下载的合并工具,然后把要合并的apk和odex(两者都要缺一不可)放在tool的目录下;(以合并launcher2.apk为例)
合并工具 下载地址:http://u.115.com/file/aq3dfy69
55614887201107212312261661005531231_016.jpg

③把odex文件拖到原道2.3固件odex合并工具上;
55614887201107212312261661005531231_015.jpg

④第一次运动自动检测系统环境并进行设置;
55614887201107212312261661005531231_014.jpg

⑤半分钟自动生成合并好的apk;
4.jpg

⑥合并成功后得到一个*_已签名.apk(*为原apk名称)。
5.jpg

PS:此工具N3专用,其他型号固件请把\Temp\system\framework下的jar文件复制到tool文件夹替换掉同名文件(在WinRAR中进行),否则不能正常合并。
得到完整的apk后,就开始对其进行反编译。




二、APK文件反编译和重编译
①下载apktool,有人说1.3版好有人说1.4版好,我提供一个我测试没问题的(版本未知),不喜者自行搜索下载。
下载地址:http://u.115.com/file/aq3dsr48
②打开windows的命令提示符,复制地址栏里apktool解压后路径(假设为dir),如果你解压在系统盘(一般为C),输入
  1. cd dir                                (示例,如果文件夹路径为 C:\Apktool,只需输入 cd \Apktool)(没有C:\)
复制代码
非系统盘输入(注意空格)
  1. cd /d dir                           
  2. (示例:我的apktool目录为  I:\Apktool,需要输入 cd /d I:\Apktool)
复制代码
6.jpg

PS:此步目的是把命令提示符定向在apktool目录,方便后续步骤。

③把刚刚合并好的apk复制到这个目录下,去掉文件名中的中文字符(否则反编译会出现错误)(以launcher2.apk为例);
④把固件中的framework-res.apk也复制到该目录下;
7.jpg

⑤先安装基础包,输入命令:apktool if framework-res.apk
8.jpg
9.jpg

⑥反编译apk:apktool d launcher2.apk


⑦零错误反编译完成后在该目录下生成一个launcher2的文件夹。
12.jpg
13.jpg

⑧要重编译,输入命令:apktool b launcher2,输出的重编译apk在launcher2\dist
14.jpg
15.jpg
16.jpg

注意:
0.jpg




任务完成。

反编译和重编译系统apk是深层美化、定制固件UI的第一步,最基础的一步,必须要掌握的一步。

Launcher2.apk搞定后,继续编译SystemUI.apk和framework-res.apk

PS:这个方法对所有的Android系统都通用。
2

查看全部评分

分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
分享分享0 收藏收藏0

Rank: 8Rank: 8

2#
那个谁 发表于 2011-7-28 10:15:39 |只看该作者

使用道具 举报

管理员

超级大菜鸟

Rank: 9Rank: 9Rank: 9

3#
混混@普宁.中国 实名认证  发表于 2011-9-27 08:24:10 |只看该作者
加分,不二话

使用道具 举报

Rank: 8Rank: 8

4#
那个谁 发表于 2011-9-27 19:14:08 |只看该作者
好东西。。。好麻烦。。。好复杂。。。。

使用道具 举报

您需要登录后才可以回帖 登录 | 加入学盟

手机版|Scripts 学盟   |

GMT+8, 2024-4-26 10:24 , Processed in 1.093162 second(s), 15 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部