但是RROLayers在普及性和适应性方面已经飙升


自从过去几年以来,Android主题已经非常成熟,zip-modding APKs等被更优雅的解决方案所取代,例如RRO Layers和新引入的Substratum 。尽管后者是新的并且仍处于早期阶段,但是RRO Layers在普及性和适应性方面已经飙升,社区为覆盖层池做出了积极贡献 。
什么是RRO层?
由于Android Lollipop的主题功能有限,Runtime Resource Overlay是Sony内部开发的一种解决方案,用于Xperia Themes的功能和快速原型制作 。鉴于其巨大的潜力,社区中的一些开发人员在Sony的基础上进行了开发,提出了RRO层框架,该框架可轻松地与大多数定制和轻度修改的ROM一起使用 。
作为其“ RRO”前缀的恰当声明,Layers框架在运行时替换了应用程序的资源,从而使开发人员可以将其绑定到主题中并使用各种对象作为主题,例如颜色字符串,尺寸,应用程序使用的整数值,甚至可绘制对象,使高级用户可以轻松,精细地控制手机上的主题应用程序 。
入门
由于RRO框架的操作简单,在运行时交换资源,构建Layers主题是一项简单明了的任务,唯一的先决条件是基本的标记知识和颜色字符串的一般概念 。这样,还有一些工具,您就可以构建漂亮的东西了,让我们开始吧–
步骤1:设置构建环境
【但是RROLayers在普及性和适应性方面已经飙升】图层工具
构建覆盖图的实际过程需要一套工具,这些工具完全免费,可以在数分钟内完成设置 。该列表包括:
Android Studio
JDK
文本编辑器,例如Sublime Text或Notepad ++
APK工具
图层项目生成器
步骤2:生成基础项目
图层生成器
Layers项目生成器是一种便捷的工具,它使构建叠加层的最复杂部分变得不那么重要-配置新项目 。仅限于Windows,该小软件仅包含一堆参数,例如目标应用程序的程序包名称,作者名称,项目名称和程序包图标,并生成支持Gradle的Android Studio程序包,使您直接进入实际的主题过程 。
步骤3:将专案汇入Android Studio
图层导入
启动Android Studio –如果这是您的第一次,则必须对其进行设置并点击“打开现有的Android Studio项目”选项 。选择生成的文件夹,该文件夹通常与生成器位于同一位置,然后继续并导入它 。
步骤4:完成专案设定
图层构建
现在,您应该看到Android Studio项目窗口,左侧窗格中具有文件列表 。默认视图对我们而言效果不佳,因此请从下拉菜单中选择“ 项目” 视图 。Android首选的构建系统Gradle现在可以随时启动,并开始最终的配置和处理步骤 。完成后,转到 Build菜单并重新构建 项目以确保安全,忽略可能显示的任何Gradle警告 。
步骤5:获取资源
图层apktool
要为应用程序的资源设置主题,您需要动手使用它的资源标识符,该标识符在原始APK的资源文件中定义 。你问如何得到那些?当然,APKTool 。强大的工具允许反向工程应用程序文件,将反编译后的项目作为输出提供,而Java代码仍保留其精巧的smali格式,而资源的复制与编译前在项目中显示的完全相同 。一旦你反编译的APK,其所需的资源文件复制到相同的位置在您的项目,如colors.xml改变应用程序的配色方案 。
步骤6:主题,主题,主题
图层主题
现在您可以开始主题叠加层了 。拥有应用程序的资源文件后,此过程非常简单,大部分工作只是查找合适的资源 。例如,如果要更改应用程序的原色和强调色,则需要定位colorPrimary和colorAccent资源,并更改其十六进制值 。完成后,您所需要做的就是点击工具栏上的绿色运行按钮,通过adb连接设备,然后在设备上安装叠加层,然后您可以在Layers Manager应用程序中启用它并查看实际工作 。小学的,不是吗?
笔记
主题化过程本身非常容易,但是一路上您可能会遇到一些陷阱,可能会措手不及 。其中一些需要注意的是–
十六进制颜色字符串
如果您不熟悉十六进制配色方案,则可以在线使用大量工具,这些工具可让您从调色板中选择颜色并生成相应的十六进制代码,例如HexColorTool和Adobe Kuler,甚至可以如果您正在寻找colorAccent 值,则生成互补色。简而言之,十六进制配色方案定义了#RRGGBB或#RGB格式的颜色,其值的范围为00到ff,这三种基色组合形成确定的颜色 。有时,您可能会遇到八个字符的十六进制字符串,但不必担心,因为这两个额外的字符是该方案的一部分,用于表示 字母,它是颜色的透明度值,格式为#AARRGGBB或#ARGB 。
尺寸单位
为了支持多种屏幕尺寸,Android使用称为dp或dip的度量单位,这是与密度无关的像素的缩写。这些值由框架在运行时转换为实际像素值,并且大约是设备密度桶的数量,设备密度桶为此值分配了适当的乘数 。
可绘制的更改
更改可绘制对象是一个看似简单的过程,唯一需要的是具有相同名称和相同大小的图像 。但是,必须牢记Android的可绘制密度系统,例如Android Asset Studio等工具会通过预定义的可绘制集和图像调整大小选项来简化此过程 。
样式编辑
有时,某些属性可能未在其各自的文件中找到,一些开发人员选择直接在应用程序的主题中输入诸如原色和强调色的值 。这些属性通常可以在AppTheme 组下的styles.xml文件中 找到。

    推荐阅读