search 登录 注册
arrow_back返回列表
ID:121680
light_modedark_modestarstarstar
Lv.2 独赏二月雪
edit_note帖子 381
stars积分 24,988
event加入 2012-09-06
安卓交流 精华

状态栏时间居中、显示运营商、自定义背景教程!

schedule发表于 2014-12-09 23:14:00 visibility查看 6,099 chat_bubble回复 274
#1 楼主
好久没有美化教程帖,所以特来发上一帖!
准备工作:JDK的安装,配置,以及APKTOOL的使用
目地:编译,反编译的必备环境 ,先把apktool软件和视频安装教程给出来百度云下载

状态栏时间居中教程


反编译:
1.提取system/app下的systemui.apk以及system/framework下面的framework-res.apk到apktool目录下。

2.开始-运行-CMD写入:cd
apktool 回车 输入:apktool if framework-res.apk 回车输入:apktool if systemui.apk 回车 输入:

3.找到位于apktool/systemui
res
layout目录下的status_bar.xml文件,

4.用记事本打开搜索:

<com.android.systemui.statusbar.Clock android:textAppearance=“@android:style/TextAppearance.StatusBar.Icon“ android:gravity=“left|center“ android:paddingRight=“6.0dip“ android:layout_width=“wrap_content“ android:layout_height=“fill_parent“ android:singleLine=“true“ />

5.将这一整段剪切到xmlns:android=“http://schemas.android.com/apk/res/android“>下面

6.然后添加android:layout_gravity=“center_horizontal“到上面那一段的倒数第二行
7.完整语句如下:
<com.android.systemui.statusbar.Clock android:textAppearance=“@android:style/TextAppearance.StatusBar.Icon“ android:gravity=“left|center“ android:paddingRight=“6.0dip“ android:layout_width=“wrap_content“ android:layout_height=“fill_parent“ android:layout_gravity=“center_horizontal“ android:singleLine=“true“ />

修改到此你的状态栏时间已经移动到中间啦~~

8.接下来就是回编译:(很容易出错的地方)
回到cmd界面输入:apktool b systemui,等到界面显示Building apk file...表示编译完成

这时候在apktool/systemui下面会生成一个dist目录,新生成的systemui.apk就在里面

9.用winrar打开回编好的apk。把systemui
res
layout
status_bar.xml拉出来,放回你原来的systemui.apk里面的相同位置。
将systemui.apk放回内存卡移动到system下面修改权限为RW-R-R,然后放入app下面,重启后生效~



状态栏显示运营商教程

1.反编译systemui.apk之后

2.找到
res
layout
status_bar.xml

3.用记事本打开:
找到:<LinearLayout android rientation=“horizontal“ android:id=“@id/icons“ android:layout_width=“fill_parent“ android:layout_height=“fill_parent“>

4.在下面添加如下代码:

<com.android.systemui.statusbar.CarrierLabel android:textAppearance=“@android:style/TextAppearance.StatusBar.Icon“ android:gravity=“left|center“ android:paddingLeft=“6.0dip“ android:layout_width=“wrap_content“ android:layout_height=“fill_parent“ android:singleLine=“true“ />

5.回编译..................
提取新生成的systemui.apk中的resource.rsc文件,以及status_bar.xml,替换原systemui.apk中的对应文件

6.修改好权限放入system/app下面 重启后生效~~

自定义背景教程
1、先复制一下framework-res.apk 作为源文件

2、反编译framework-res.apk

3、到 framework-res
res
values 该目录下找到 styles.xml 文件 可以用记事本打开

打开styles.xml文件之后查找到

<item name=“colorBackground“>@color/background_dark</item>

改为

<item name=“colorBackground“>@color/transparent</item>

再一次找到

<item name=“windowBackground“>@drawable/screen_background_dark</item>

改为

<item name=“windowBackground“>@drawable/screen_background_dark_transparent</item>

4、保存

5、将祢的背景图片命名为 screen_background_dark_transparent.png
(横屏图放在framework-res
res
drawable-hdpi下
6、回编译 framework-res.apk
7、用WINRAR压缩文件管理器打开framework-res.apk 把resources.arsc拉到桌面

8、用WINRAR压缩文件管理器打开源文件 把桌面上的resources.arsc拉到源文件里 选择压缩方式为储存 替换掉原来的 记着也把背景图片放进去

之后就可以把源文件替换到系统里用了

在这里讲一下drawable(hdpi,ldpi,mdpi)的区别
在android 2.0以上版本中,drawable目录被拆分成了三个目录:drawable-hdpi,drawable-ldpi,drawable-mdpi),主要是为了支持多分辨率,hdpi里面主要放高分辨率的图片,如WVGA (480x800),FWVGA (480x854),mdpi里面主要放中等分辨率的图片,如HVGA (320x480),ldpi里面主要放低分辨率的图片,如QVGA (240x320),系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。程序里还是使用R.drawable来引用图片资源。在开发程序时为了兼容不同平台和不同屏幕,建议各自文件夹根据需求均存放不同版本图片
所以你就别抱怨你的framework-res.apk里面没有mdpi目录啦,因为你的是高分辨率机子~

全部回复 (274)

ID:163153
light_mode
Lv.1 韶华一笑间
2014-12-09 23:14:00 沙发
神。。。。神。。
ID:53136
light_modestarstarstar
Lv.2 独赏二月雪
2014-12-09 23:24:00 板凳
?。。。
ID:165098
light_modestarstar
Lv.1 韶华一笑间
2014-12-09 23:31:00 地板
就要
ID:143729
light_modedark_mode
Lv.1 韶华一笑间
2014-12-09 23:38:00 #5
恶心
ID:101533
light_mode
Lv.1 韶华一笑间
2014-12-09 23:44:00 #6
你妈买逼 ,鸭子管理员
ID:136849
light_modestarstarstar
Lv.1 韶华一笑间
2014-12-09 23:47:00 #7
空摸摸看
ID:164259
dark_modedark_modedark_mode
Lv.1 韶华一笑间
2014-12-09 23:48:00 #8
旅途
ID:144129
light_modestar
Lv.1 韶华一笑间
2014-12-10 00:14:00 #9
??!。
ID:65432
light_modestarstarstar
Lv.2 独赏二月雪
2014-12-10 00:16:00 #10
换个出现
ID:126108
light_modedark_modestar
Lv.1 韶华一笑间
2014-12-10 00:38:00 #11
低调
ID:135965
light_modestarstar
Lv.1 韶华一笑间
2014-12-10 00:41:00 #12
族兔兔
ID:146375
light_modedark_mode
Lv.1 韶华一笑间
2014-12-10 00:56:00 #13
睡吧睡吧
ID:100847
dark_modestarstarstar
Lv.1 韶华一笑间
2014-12-10 01:11:00 #14
流量
ID:165937
dark_modedark_modedark_mode
Lv.1 韶华一笑间
2014-12-10 01:21:00 #15
啊考虑兔兔
ID:133434
light_modedark_mode
Lv.2 独赏二月雪
2014-12-10 02:21:00 #16
。。。。
ID:5206
light_modestarstarstar
Lv.1 韶华一笑间
2014-12-10 03:46:00 #17
还是不会
ID:130054
light_mode
Lv.1 韶华一笑间
2014-12-10 04:28:00 #18
aass
ID:142508
dark_modedark_modedark_mode
Lv.1 韶华一笑间
2014-12-10 06:04:00 #19
刚刚好回家看看
ID:5236
light_modedark_mode
Lv.6 胸怀六国志
2014-12-10 06:38:00 #20
 “平安寿险,标准案件,资料齐全,二天赔付!今日张掖赔付理赔案件共计18件,共计赔付19.2万元,其中客户苗先生,52岁,于2012年11月投保智胜人生12万,智胜重疾6万,无忧意外6万,无忧医疗万,住院费用1份,住院日额5份。被保险人于2014年11月因疾病身故,经公司核实,本次事故属实,本次按照智胜人生条款给付120000元。中国平安@谢志、刘丽霞
ID:1919
light_modedark_mode
Lv.5 甘首五朝臣
2014-12-10 06:45:00 #21
wori
登录 后才能回复