链接: http://www.miui.com/thread-513527-1-1.html

前言:很多童鞋对美化很感兴趣,都想拥有一个完完全全属于自己风格的手机系统!对那些自定义全局背景,1%电量显示,透明下拉菜单。。。都很感冒!

美化的重点跟难点就在于对"framework-res.apk"和"systemUI.apk"这两个文件的编译和反编译!这里说的编译和反编译是所有深度美化都必须要做的事,也就是说,所有的美化都是基于对apk的反编译后,才能进行的!而绝大多数修改"framework-res.apk"和"systemUI.apk"后导致无法进入系统,或者无限开机重启的,基本都是在编译跟反编译上出了问题!

framework-res.apk  的修改

framework-res.apk文件简介:

framework-res.apk文件位于/system/framework文件夹中,里面有着系统GUI的大部分的图片,包括图标,弹出对话框的样式,动作特效,界面布局,我们要知道"framework-res.apk"是不可以重签名的!(我们要切记这一点)另外,修改"framework-res.apk"之前务必先做好备份!这是相当重要的文件,稍有出错都会令你进不了系统的!以下为Framework-res.apk的文件结构:

/assets

/META-INF

/res

/AndroidManifest.xml

/resources.arsc

复制代码

一、java平台的搭建、下载工具apktool教程地址及下载地址:http://www.miui.com/thread-492332-1-1.html 二、反编译framework文件 在解压缩的ROM包或者用RE浏览器打开目录/system/framework下,就会看到有"framework-res.apk"的文件了,直接把他复制到电脑上准备用apktool反编译"framework-res.apk" ,在D盘根目录下建立一个apktool的文件夹,把解压好的APKTool.zip里面的三个文件以及“framework-res .apk”一齐放到D:\apktool中,打开“命令提示符”,方法:“开始--所有程序--附件--命令提示符”,或者快捷键“Win+R”,输入cmd,回车依次输入下面的代码

d:

cd apktool

apktool if framework-res.apk

apktool d framework-res.apk framework-res

PS:d 是反编译命令 后面的 framework-res表示生成文件名为framework-res 的文件夹

复制代码

注意:这里的framework-res.apk一定要是原版ROM里的文件,没有经过修改的,不然会导致后面的SystemUI回编译失败。

此时:D:\apktool目录下就会多出一个名为

framework-res

的文件夹,里面放着就是反编译出来的文件了

三.Framework-res.apk图片修改及注意事项

本系列教程的主要研究方向在res文件夹中的图片与XML文件

在修改或替换framework-res.apk中的图片前,向大家提出以下几点建议,望大家注意,避免修改失败

1)图片的获取

关于图片的获取,大家可以用winrar打开framework-res.apk文件,进入找到res/drawable-mdpi(有些rom是drawable-ldpi)

把整个文件夹拖出来

2)图片尺寸要注意

大家修改时,要注意与原来的图片大小不要相差太远,不然会造成越界问题

3)图片修改时注意名称一致

各位在图片修改时,若需要保存,千万记着,图片的名称必须要跟原来的一致,多一个或少一个字都不行!

4)图片的覆盖

修改完图片后,我们再在winrar中打开framework-res,把图片分别拖入drawable-mdpi和drawable-ldpi文件夹覆盖

5)framework-res.apk权限修改

修改完后的framework-res.apk,权限已经被修改,我们要把它改成完全控制,具体方式如下:

右击framework-res.apk,选择属性去掉只读属性,选择”安全”选项卡,然后点击编辑,把用户对象的完全控制选上,再点击确定,退出编辑界面。

最后,整理了一下大家经常想要修改的图片列表:

emo_im_xxx  表情系列图片

ic_jog_dial_xxx  锁屏界面功能图标(圆形的那些)

ic_lock_idle_xxx  锁屏界面提示图标

ic_menu_xxx  系统菜单图标

stat_notify_xxx  状态栏提示图标(屏幕左方的图标)

stat_sys_battery_xx  电池图标

stat_sys_battery_charge_animX  充电时电池图标

stat_sys_upload_animX  上载图标

stat_sys_download_animX  下载图标

stat_sys_gps_ongps  图标

stat_sys_headset  耳机图标

sym_def_app_icon  默认程序图标

usb_androidUSB  连接机器人图片

statusbar_background9  状态栏背景图标(2.2之后版本的ROM该图标在systemUI.apk里)

jog_dial_bg  解锁背景图片

复制代码

四、回编译 framework-res .apk 当你已经在这里修改好想要修改的东西以后,接下来就要进行编译回去了!! “命令提示符”上输入:

apktool b framework-res

复制代码

成功编译之后, framework-res 文件夹就会多了个dist的文件夹,里面放的就是编译好的文件,同样命名为framework-res .apk 好了,重中之重就在下面了!不要以为编译好了就可以把这文件放回手机,还不可以的。 先搞清楚,我们现在有两个apk文件,一个是编译前的framework-res .apk,一个是编译后的framework-res .apk。 用压缩软件同时打开编译前和编译后的 framework-res .apk,是打开,而不是解压 细心观察,会发现编译后的 framework-res .apk ,少了一个META-INF的文件夹,这个其实就是apk包的签名所在,但是这框架文件是不能签名的,所以,我们才要进行下面的步骤   我们需要把两类文件从编译后framework-res .apk拉到编译前framework-res .apk中替换,   第一类是:刚才反编译后,你所替换过,或者修改过的所有文件   第二类是:resources.arsc这一个文件   所有文件一个都不能替换少了   记得要放到相同的目录下哦!!   替换好后,我们就得到了需要的“framework-res.apk”   然后,用RE浏览器把“framework-res.apk”复制到/system目录下,然后,长按文件名选择权限,具体权限修改为所有用户组读取,用户写入权限(RE管理器挂载为读/写)修改好确定后,再把“framework-res.apk”剪切到/system/framework目录下,选择替换原文件,再次确认权限是否有误!   PS:一定要修改好权限后才能放进/system/framework,不然系统会马上挂掉的!!   最后就是重启手机,修改完成!

SystemUI.apk 的修改

SystemUI.apk简介

自android2.2开始,原本存在与framework-res.apk中的状态栏和下拉通知栏界面控制被分割出一个单独的apk文件,命名为SystemUI.apk,保存在System/app文件夹中,可看出,在本文件中,是存在着状态栏的图标,XML控制文件等,这样的分割,使我们可以更方便地去修改,也可更专注的研究美化状态栏。 以下为SystemUI.apk的文件结构:

/res

/META-INF

/AndroidManifest.xml

/classes.dex

resources.arsc

复制代码

一.SystemUI.apk图片修改及注意事项 1)图片的获取   关于图片的获取,大家可以用winrar打开SystemUI.apk文件,进入找到res/drawable-mdpi 2)图片尺寸要注意   大家修改时,要注意与原来的图片大小不要相差太远,不然会造成越界问题 3)图片修改时注意名称一致   各位在图片修改时,若需要保存,千万记着,图片的名称必须要跟原来的一致,多一个或少一个字都不行! 4)图片的覆盖   修改完图片后,我们再在winrar中打开SystemUI.apk,把图片分别拖入drawable-mdpi和drawable-ldpi文件夹覆盖 二.常见修改图片列表

battery_low_battery  充电提示

stat_2g3g  下拉通知栏2G/3G切换图标

stat_airplane_on/off  下拉通知栏飞行模式开启/关闭图标

stat_bluetooth_on/off  下拉通知栏蓝牙开启/关闭图标

stat_brightness_auto/mid/on/off  自动调节/适中/开启/关闭下拉通知栏屏幕亮度图标

stat_data_on/off  下拉通知栏数据控制开启/关闭图标

stat_flashlight_on/off  下拉通知栏电筒开启/关闭图标

stat_gps_on/off  下拉通知栏GPS开启/关闭图标

stat_lock_screen_on/off  下拉通知栏锁屏开启/关闭图标

stat_media_xxx  下拉通知栏播放器控制图标

stat_ing_xxx  下拉通知栏声音模式控制图标

stat_orientation_on/off  下拉通知栏转屏控制图标

stat_screen_timeout_on/off  下拉通知栏屏幕超时控制图标

stat_sync_on/off  下拉通知栏同步开启/关闭图标

stat_sys_data_xxx  数据通信图标

stat_sys_no_sim  无sim卡通知图标

stat_sys_signal_x  信号图标

stat_sys_wifi_xwifi  信号图标

stat_vibrate_XXX  震动提示图标

shade_bg  下拉菜单背景

statusbar_background  状态栏背景图片

android 程序界面美化,Android ROM定制——界面美化基础(framework-res、SystemUI修改)...相关推荐

  1. Android ROM定制——界面美化基础

    Android ROM定制--界面美化基础 前言:很多童鞋对美化很感兴趣,都想拥有一个完完全全属于自己风格的手机系统!对那些自定义全局背景,1%电量显示,透明下拉菜单...都很感冒!美化的重点跟难点就 ...

  2. java写一个android程序_【Android开发笔记】3.编写第一个Android程序

    前言 上一节我们通过一个Demo熟悉了Eclipse的基本使用.如何在模拟器和手机中运行以及如何打包成APK,但没具体编写代码,相信很多同学已经按耐不住了吧,这一节我们会动手编写代码来熟悉Androi ...

  3. 电视android内置系统界面,系统界面:原生安卓 定制界面_汽车科技评测-中关村在线...

    在系统界面层级上,两者虽然都采用Android系统,不过思路却完全不同.酷比魔方A1在开机之后我们能立刻感受到原汁原味.系统内置了一系列的安卓平台应用,不过对于大部分的用户而言,VST与泰捷视频相信还 ...

  4. android 程序退出广播,android 利用广播实现程序的强制退出

    利用广播机制,实现程序的强制退出. 前面有篇博文,写到了一键退出,这里利用到了那里的ActivityCollector的集合和BaseActivity 功能:打开程序后,先登录,登录成功后,进入主页面 ...

  5. Android程序的目录结构分析——manifests目录、Java目录、res目录

    manifests目录 该目录下的AndroidManifests.xml文件是项目的系统配置文件,又叫做清单文件,每个项目都必须含有该文件.它为Android系统提供了启动运行项目时必须的基本信息. ...

  6. 拼图android程序,可视化开发Android应用程序:拼图开发模式App Inventor

    可视化开发Android应用程序:拼图开发模式App Inventor 作 者:王向辉 等编著 出版时间:2013 内容简介 <可视化开发Android应用程序:拼图开发模式App Invent ...

  7. android程序开发实例,Android示例程序剖析之LunarLander游戏

    前面有几篇文章写的是对Android示例程序贪吃蛇Snake程序的剖析,本文继续分析Android自带的另一个小游戏LunarLander的程序.在贪吃蛇Snake程序中采用了"定时器+系统 ...

  8. android程序日历layout,Android使用GridLayout绘制自定义日历控件

    效果图 思路:就是先设置Gridlayout的行列数,然后往里面放置一定数目的自定义日历按钮控件,最后实现日历逻辑就可以了. 步骤: 第一步:自定义日历控件(初步) 第二步:实现自定义单个日期按钮控件 ...

  9. android程序启动动画,Android设置软件启动动画(以及初次安装的几张引导图)

    Android设置软件启动动画(以及初次安装的几张引导图) 设置软件启动动画 1 创建一个启动Activity 这里叫做QiDongActivity 它的XML中设置一个matchparent的背景图 ...

  10. android程序root权限,android – 如何从源代码授予对特定应用程序的root访问权限而不是root权限?...

    我正在从源代码编译Android ROM,我有一个应用程序,我希望它预先安装并让它以root权限运行. 如何在不支持整个ROM的情况下授予对此特定应用程序的root访问权限? 解决方法: 希望你不需要 ...

最新文章

  1. Java线上问题排查思路及Linux常用问题分析命令学习
  2. dubbo官方文档中文_Pandas中文官方文档:基础用法5
  3. 人人网 6.0 版申请页面随着滚动条拖动背景图片滚动出现,具体使用 JavaScript 和 CSS 原理是什么?...
  4. 浅谈web开发以及django的安装和入门
  5. java jdk 未知错误_解决JAVA JDK安装出错的最常见问题,帮你排除困扰
  6. React的Element的创建和render
  7. JConsole监控远程linux下的JVM
  8. 在vue中使用echarts实现飞机航线 水滴图 词云图
  9. 如何用SolidWorks软件绘制三维模型?
  10. 涛思数据库(二)——上手使用
  11. win 7硬盘安装centos7 亲测可行
  12. 《白话大数据与机器学习》学习笔记
  13. java必备英语单词
  14. html实现读取读卡器,如何在web浏览器页面使用IC卡读卡器并且兼容所有浏览器
  15. ABP VNext学习日记14
  16. 天正当前比例怎么设置_天正模型空间怎么设置(天正7图纸空间中如何改变当前比例)...
  17. 技术资料收集~服务器
  18. 飞控FirmamentAutopilot介绍
  19. java断路器原理_Netflix Hystrix断路器原理分析
  20. android q(10.0)app应用卸载白名单

热门文章

  1. 训练集,验证集,测试集
  2. 小程序练习 - rawData和userInfo
  3. java开发app后端_app后端用什么开发
  4. python安装模块方法_Python模块安装方法
  5. Eolink :通过构建 API 全生命周期管理体系,实现降本增效
  6. python 车辆识别_PythonAI应用(1)车辆识别
  7. 如何复制PDF文件中的文本和图片?
  8. SAI v2.0小巧强大的板绘工具
  9. 177. Python语言 的 Flask框架项目 之 发布房源 模块的开发
  10. 第26课:JSP Cookie 处理 读取和删除cookie(JSP教程 JSP入门实战教程 黄菊华Java网站开发系列教程)