[attach]244545[/attach]
新建以下变量:
(1)变量名:JAVA_HOME
变量值: C:\Program Files\Java\jdk1.6.0
[attach]244546[/attach]
(2)变量名:CLASSPATH
变量值:
.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
[attach]244547[/attach]
(3)打开
变量名:Path
*在末尾添加:
;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
[attach]244548[/attach]
#end
完成对JAVA环境的配置
#开始搭建反编译需要的配置
搭建好java环境后,我们需要配置以下apktool反编译的环境。
首先,你反编译系统的文件,例如状态栏,那么必须有系统的框架资源
我们用RE管理器或者电脑端的360手机助手,将手机系统文件中的的System/framework文件夹导出到电脑
或者直接从你的ROM中提取,提取framework文件夹里的东西后,全部放到我们先前建立的MIUI文件夹里。
然后将system/app/MiuiSystemUI.apk
就是状态栏
也放到MIUI文件夹里
现在MIUI文件夹下应该包含以下文件,如图:
1.apktool工具
2.framework文件夹中的文件
3.MiuiSystemUI.apk状态栏
[attach]244549[/attach]
然后打开CMD.exe
分别输入以下2条代码,输入代码后要回车:
- apktool if framework-res.apk
- apktool if framework-miui-res.apk
复制代码这样就完成了反编译工具搭建,进入反编译教程。
[attach]244550[/attach]
②.反编译状态栏以及修改代码
1.打开cmd.exe
输入以下代码
apktool d miuisystemui.apk
MIUI目录下会生成一个MiuiSystemUI文件夹
打开进入res/layout
找到status_bar.xml用notepad++打开
[attach]244551[/attach]
看到密密麻麻的代码,是不是很头疼?其实很简单,我们想要改变哪个图标的位置就移动指向他的那行代码即可
以下①是时间居中 ②是信号居左③是仿iphone
①时间居中,如果你仅仅想时间居中,那么做完这一步就跳过②和③
找到这个开头的代码,双击删除一整行
[attach]244552[/attach]
然后到
<LinearLayout
android
rientation="horizontal" android:id="@id/icons"这条代码的上面
新建以下代码:
- <LinearLayout android:gravity="center"
- android:orientation="horizontal" android:layout_width="fill_parent"
- android:layout_height="fill_parent">
-
- <com.android.systemui.statusbar.policy.Clock
- android:textAppearance="@style/TextAppearance.StatusBar.Clock"
- android:id="@id/clock" android:gravity="center" android:textSize="16.0dip"
- android:textColor="#ffffffff" android:paddingTop="1.0px"
- android:layout_width="wrap_content" android:layout_height="fill_parent"
- android:singleLine="true" android:layout_weight="1.0" />
- </LinearLayout>
复制代码同样要注意代码前段对齐,如图
[attach]244560[/attach]
这样就是时间居中了,如果搭配上信号居左就是iphone,如果想做仿iphone就接着看。
②信号居左
我们找到这行代码
[attach]244561[/attach]
通过简单的翻译字面意思,我们知道这是代表信号的代码
我们将它移动到<LinearLayout
android
rientation="horizontal"
android:id="@id/icons"
这一行的下面,注意代码要按照图中对齐!
[attach]244562[/attach]
这样就完成了信号图标居左,如果你仅仅需要居左,就这样修改就成功了,如果你需要仿iphone的,那么接下看。
③仿iphone
仿iphone的话,那么我们的状态栏图标排列顺序目标是:
信号-运营商-wifi-时间居中-电池
上面2条中,我们已经将时间和信号位置弄好了,现在的位置是wifi-信号-运营商-时间居中-电池
我们需要将信号这块的位置更改为信号-运营商-wifi,那么我们先将运营商这行剪切,也可以双击直接删除
[attach]244563[/attach]
然后打开res/layout/signal_cluster_view.xml
[attach]244564[/attach]
这个文件,通过判断,我们知道这个是信号这块的布局
我们将刚才剪切的运营商,加上一个线性布局后,放到信号的下面
代码为
- <LinearLayout android:paddingTop="2.0px"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content">
- <com.android.systemui.statusbar.phone.CarrierLabel
- android:textAppearance="@style/TextAppearance.StatusBar.Clock"
- android:gravity="left|center" android:id="@id/carrier"
- android:layout_width="wrap_content" android:layout_height="fill_parent"
- android:singleLine="true" />
- </LinearLayout>
复制代码[attach]244565[/attach]
再将wifi移动到运营商的下面,下图是改好的,对照上图就知道怎么移动了
[attach]244566[/attach]
同时删除wifi后面的这两行代码,这个不解释了有兴趣自己看看安卓布局讲解
[attach]244567[/attach]
这样就完成了仿iphone的配置。
修改完毕后,我们切记要点击保存,才能生效哦!
回编译状态栏与替换到系统
替换完毕后重启,你就能看到效果啦!!