您所在的位置:主页 > 北方生活网 > 企业 > 正文

教程:给你的手机状态栏添加自定义图片

2020-08-25 11:35:42 来源: 阅读:-

安卓越来越统一化了。一些第三方ROM也是。

尤其是HTC的sense,不再追求那种大刀阔斧的大调整,去努力的掩盖一些安卓原本的痕迹。而是只在一些必要的地方做出调整,当然,也保留有一些原有的sense的影子。比如虚拟按键的风格,索尼也是,虚拟按键一直都是自己的风格。

这种倾向于高度统一化的倾向最大的问题就是减小了差异性和个性化。这个是利弊共存的。

对于个性化特征越来越不明显的最大体现之一就是状态栏,现在安卓的状态栏基本都取消了网标,中国移动之类的你是看不到了。

当然也有很多人追求个性化,除了要求文本之外,还想要加上一些图片。比如把QQ头像微信头像之类的放在状态栏,以追求统一个性化。

教程:给你的手机状态栏添加自定义图片

比如想我这样,在状态栏加一些文字或图片。今天我就扯淡这么一篇给状态栏加图片的文章。

想想自己上次刷机后,状态栏文本和图片也都没了,自己也要折腾,干脆写一篇。

改运营商这个折腾的东西,早在塞班的时候就有了。

教程:给你的手机状态栏添加自定义图片

【看顶部中间的运营商】

把塞班这个运营商改成自定义动态图片也是可以的,只是我没留着截图。。。

想想当初作死折腾手机,有点小怀念啊!

扯远了,开始教程。

要求:手机已Root,最好有第三方Recovery,有备份,最好破解了Android核心签名验证。

首先,你需要用到三款软件。

一个反编译工具,一个可以解压的文件管理器,一个文本编辑器。

其实,那个反编译工具也有文件管理和文本编辑的功能,但缺少部分功能,比如解压。

教程:给你的手机状态栏添加自定义图片

我这里用到的是Apktool,X-plore,Quoda这三款软件。

另外,你还需要准备一张图片,就是你要添加的图片,尺寸任意,因为可以根据XML语法进行调节缩放之类的。

教程:给你的手机状态栏添加自定义图片

——————————————————————

这下面的内容和上一篇教程雷同,鑫君哔哔叨又讲一遍。

Apktool说一下,这个软件按处理架构分版本,软件50M左右。安卓6.0的用6.1版本。安卓5.1及一下的建议用5.2版本。

教程:给你的手机状态栏添加自定义图片

首先,进文件管理器,进入SD card根目录。选择一个目录,这个目录不能有中文。建议新建一个。

教程:给你的手机状态栏添加自定义图片

我建立的是ITeyeshot。加个.是为了隐藏这个目录,不让图库识别。要不然图库里一大堆软件素材图。很乱的。

教程:给你的手机状态栏添加自定义图片

然后进根目录,因为我用的这个文件管理器,是两个窗口的,所以我用的左窗口,里的设置里的访问改成超级用户加挂载读写。

教程:给你的手机状态栏添加自定义图片

找到systemUI.apk,一般在system/priv-app里,安卓5.0及以上会再套用一个文件夹。

安卓4.3及以下在system/app里。

第三方ROM有些会加前缀,比如LGsystemUI.apk或是MIUIsystemUI.apk之类的。

教程:给你的手机状态栏添加自定义图片

复制到那个文件夹。

教程:给你的手机状态栏添加自定义图片

然后进apktool,找到那个文件夹,选择apk。菜单里第二个第一个有个【反编译】,就是它了。

对了,反编译系统apk之前要导入系统框架,这个就是把system/framework里的apk都选择【导入框架】,这里我就不说它了。

教程:给你的手机状态栏添加自定义图片

反编译菜单里,选择反编译资源就行了,dex我们不改,不需要用到。

另外说下,这是apktool 6.1的界面,5.2的界面和这个有差异。具体的因为我是6.0,用6.1的apktool,5.2版本的apktool我现在没有,暂时无法说明,不过类似就是了。

教程:给你的手机状态栏添加自定义图片

半分钟左右,反编译就完成了?注意,完成和成功是两码事,如果没有成功,注意检查框架是否导入完整,或是配置没有配置好(5.2)。

因为有些ROM的systemUI做了特殊处理,可能无法反编译或回编译,我这里提前测试下。

教程:给你的手机状态栏添加自定义图片

长按反编译生成的文件夹,选择回编译。

教程:给你的手机状态栏添加自定义图片

记住,中间的都不勾选,aapt选择对应的安卓版本。

教程:给你的手机状态栏添加自定义图片

出现个Building apk file就是成功了。

教程:给你的手机状态栏添加自定义图片

也会生成一个编译好的新的apk。这里我们没做任何修改,只是用作测试,不需要用到它,删掉。

————————————————————————

正式教程开始。

教程:给你的手机状态栏添加自定义图片

将刚才的图片重命名为你想要的名字,但注意,只能小写字母和数字和一些简单的特殊符号。不能用大写字母和中文。

教程:给你的手机状态栏添加自定义图片

重命名好之后,把它放进刚才编译出来的文件夹的res/drawable目录里,就像这样。

然后,我们去处理状态栏布局。

教程:给你的手机状态栏添加自定义图片

打开刚才反编译生成的文件夹,依次打开res/layout,找到status_bar.xml。这个文件就是状态栏的布局文件。

然后用文本编辑器打开!

这个文本说下,最好复制一份到另一个文件夹做备份。

教程:给你的手机状态栏添加自定义图片

上一篇有讲到过位置的问题,这次就不讲了,直接加在我上篇改的自定义文字的后面。加上

这样的一段语法。

注意最左侧这个行数标号,不要把一段多按个回车变成两段。

ImageView是图片视图,android:gravity是对齐方式,指的是容器内控件相对于容器的位置,和android:layout_gravity有所区别。width和height分别是宽度和高度。

这里说明一下,因为我用的图片的分辨率是136*136,如果我宽度选择wrap_content的话,宽度就是自适应的,它就会变成大约45dip,就会太宽,虽然图片本身不会非等比缩放,但会占用其余空白空间,所以宽度我直接赋值25.0dip,状态栏本身的高度也是25.0dip。

android:src="@drawable/it_eyeshot"就是声明这个图片的引用地址。it_eyeshot就是你的图片的名字,要和它一模一样。

当然,也可以用其它属性,比如android:background="@drawable/it_eyeshot",这个是背景属性,也能用,不过默认是铺满容器,这个我就不扯了。后面可能会有文章讲到!

然后我们回编译。

教程:给你的手机状态栏添加自定义图片

改好之后,我们就回编译。按照上面的方法来。

教程:给你的手机状态栏添加自定义图片

于是乎,我们得到了一个编译好的新的apk文件。

教程:给你的手机状态栏添加自定义图片

对比一下原来的,发现少了一个文件夹,这个文件夹其实是apk的软件签名文件。

你可以把这个签名文件复制过去(不能重新签名,因为签名密钥不同),但不是很建议这么做。

一般都是把改动的文件复制到原apk里。我们这次只改动了一个status_bar.xml。我们就复制它。

教程:给你的手机状态栏添加自定义图片

【是他,是他,就是他………】

把它从生成的新apk复制到原apk里。

教程:给你的手机状态栏添加自定义图片

就这样。

教程:给你的手机状态栏添加自定义图片

除了这个,还有一个图片,原apk是没有这个图片的,所以我们把它从新apk里复制到原apk里。

除了这俩,其实,还有一个,虽然我们没有去改动,但只要添加任何文件,图片都会在编译的时候自动改动它。

教程:给你的手机状态栏添加自定义图片

就是这个arsc文件,这个文件是所有资源文件的链接。由它关联所有资源文件。整个value文件夹都是它,我们添加任何文件,都会在public.xml里赋值一个16进制的ID号。

教程:给你的手机状态栏添加自定义图片

按照刚才复制status_bar.xml和图片的方法复制到原apk。这样,原apk就变成了一个我们改好的可用的新apk。

然后把原apk复制到根目录system文件夹里。

教程:给你的手机状态栏添加自定义图片

复制好以后,长按,改权限。

教程:给你的手机状态栏添加自定义图片

权限是755,这样不能直接替换回去。

教程:给你的手机状态栏添加自定义图片

把它改成644,就像这样。

然后把它复制到系统原本systemUI所在文件夹,替换掉原来的。

教程:给你的手机状态栏添加自定义图片

5.0以上是这个文件夹,4.4是system/priv-app,4.4以下是system/app。

教程:给你的手机状态栏添加自定义图片

替换好之后就是这样子了。还没生效,重启下就是了。

教程:给你的手机状态栏添加自定义图片

这里说下这个重启,如果ROM支持软重启就用软重启。一些ROM支持“重启systemUI”,一些软件也支持。

重启好了,看下效果。

教程:给你的手机状态栏添加自定义图片

我们再看下添加图片之前的。

教程:给你的手机状态栏添加自定义图片

我们再看下安卓原生的。

教程:给你的手机状态栏添加自定义图片

简洁。。。

当然,如果你对布局语法熟悉的话,可以改更多东西的,比如时间居中,信号居左,双层布局等等。

相对来说,4.4及以下版本,改动的比较自由,不会因为添加类而崩溃之类的。

顺带说下,改动任何system分区里的东西都有风险。需谨慎。记得常备份。

下面附上,我之前改过的两个布局。

教程:给你的手机状态栏添加自定义图片

教程:给你的手机状态栏添加自定义图片

当然,我还改过别的。只是一些没截图。。。

最后,我在说下,上一篇【教程:给你的手机状态栏添加自定义文字】有类似这样的评论【闲着没事干,给手机添加负担】,【你知道吗?小米直接就可以改】。这里我不予置评。

写的算是详细,不过这篇文章我有点偷懒里,一些复制了一些上一篇文章的内容,所以你可以看到很多不是很重要的部分,和上一篇内容几乎一样。其它有疑问可以加群99322260讨论。

当然,如果是大神,他只需要一句ImageView语法就够了。

这篇文章之后,后续会有其它类似的教程整理出来发文章。

好了,就说这么多。

本文结束,谢谢阅读!

推荐阅读:青海视窗