gpt4 book ai didi

android - 如何使用 RRO 框架调整系统应用自定义颜色?

转载 作者:太空狗 更新时间:2023-10-29 14:39:41 25 4
gpt4 key购买 nike

我正在开发基于 AOSP 的自定义 ROM,我希望能够使用 RRO 框架更改某些系统应用程序的外观(颜色和其他资源),方法是在 system/vendor/overlay< 中安装独立应用程序,而不是重建整个系统应用程序。

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

我正在关注 this tutorial .我正在为 Pixel 设备(旗鱼)构建 AOSP,特别是 android-8.1.0_r28 分支。

问题 是,当我在 Pixel 设备的 system/vendor/overlay 中安装覆盖应用程序时,这不起作用 - 覆盖的 system_primary_color,也不是我在 system/priv-app/ 中与 SystemUI 应用程序一起定义、构建和安装的任何其他颜色(我每次都重新启动设备以生效)。

我观察到,vendor/overlay/ 目录中已经有应用程序:PixelSysuiDarkTheme。我不确定这些是如何应用的,以及它们是否干扰了我正在尝试做的事情,但看起来 RRO 框架已经存在并且适用于其他系统覆盖应用程序。

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

<?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/values/colors_overridden.xml:

<?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>

最佳答案

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

关于android - 如何使用 RRO 框架调整系统应用自定义颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50348669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com