首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用RRO框架来调优系统应用程序自定义颜色?

如何使用RRO框架来调优系统应用程序自定义颜色?
EN

Stack Overflow用户
提问于 2018-05-15 11:08:50
回答 2查看 3.4K关注 0票数 4

我正在开发基于自定义AOSP的ROM,我希望能够通过在system/vendor/overlay中安装一个独立的应用程序来改变一些系统应用程序的外观(颜色和其他资源),而不是重建整个系统应用程序。

我从SystemUI应用程序开始,尝试更改快速设置面板背景以及其他元素,我在frameworks/base/packages/SystemUI/res/values/colors.xml中为这些元素定义了自定义颜色。

我在跟踪本教程。我正在为Pixel (旗鱼)构建AOSP,特别是分支android-8.1.0_r28

问题是,当我在像素设备的system/vendor/overlay中安装覆盖应用程序时,这是行不通的--我定义、构建和安装的覆盖的system_primary_color和其他颜色,以及system/priv-app/中的SystemUI应用程序(我每次都要重新启动设备以获得效果)。

我观察到,在vendor/overlay/ dir:像素和SysuiDarkTheme中已经有应用程序。我不知道这些程序是如何应用的,它们是否干扰了我的工作,但是看起来RRO框架就在那里,并且正在为其他的系统覆盖应用程序工作。

这是我的覆盖应用程序的AndroidManifest.xml:

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="my.sample.package">

    <application android:label="Overlay App" />

    <overlay android:targetPackage="com.android.systemui"
             android:priority="1"/>

</manifest>

--这是我的覆盖应用程序:的res/value/colors_overridden.xml

代码语言:javascript
复制
<?xml version="1.0" encoding="utf-8"?>
<resources>

    <!-- Colors overriding Android's SystemUI -->
    <color name="system_primary_color">#FFBF360C</color> 
    <color name="keyguard_bouncer_background">#55FF0000</color>

</resources>
EN

回答 2

Stack Overflow用户

发布于 2018-09-17 01:45:04

您要做的是将覆盖安装到您的/vendor/overlay文件夹中,然后运行adb shell cmd overlay list。查找应用程序id,然后运行adb shell cmd overlay enable --user 0 application.id.here

票数 0
EN

Stack Overflow用户

发布于 2020-11-30 16:03:01

在使用Q仿真器时,我发现只有当将覆盖apk推送到/system/product/overlay而不是/system/vendor/overlay时,这才适用于我,正如上面链接的教程所描述的那样。

为了能够将apk推送到/system/product/overlay,您需要一个可写的/system分区。这可以通过以下步骤来实现:https://stackoverflow.com/a/65076881/1898527

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50348669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档