项目场景:
Android13 EDLA 项目问题修改:
- 因为需要客制化定制,Launcher3使用的是原生的版本(com.android.launcher3)。
- 原生版本的Deskclock(com.android.deskclock) targetSdkVersion 只支持到28,因EDLA项目硬性要求必须是targetSdkVersion 33,强制升级到SDK为33,会导致CTS_V测试fail,因此使用了Google版本的Deskclock(com.google.android.deskclock)
问题描述
Launcher3(com.android.launcher3)和 Deskclock(com.google.android.deskclock)搭配使用时会出现两个问题:
- 桌面的时钟组件不显示
- 休眠后默认屏保不显示时间
原因分析:
Launcher3(com.android.launcher3) 的时钟组件、默认屏保适配的是原生的 Deskclock(com.android.deskclock),此处使用的是Google 版本 的Deskclock(com.google.android.deskclock),需要修改默认的配置。
解决方案:
1. 桌面的时钟组件不显示
Launcher3 桌面的显示内容可以通过修改其配置文件实现客制化,修改时钟组件包名:将com.android.deskclock 修改为com.google.android.deskclock。
partner_default_layout.xml(vendor/partner_gms/apps/GmsSampleIntegration/res_dhs_full/xml/partner_default_layout.xml)
- <appwidget screen="0" x="2" y="1" packageName="com.android.deskclock" className="com.android.alarmclock.DigitalAppWidgetProvider" spanX="3" spanY="1" />
+ <appwidget screen="0" x="2" y="1" packageName="com.google.android.deskclock" className="com.android.alarmclock.DigitalAppWidgetProvider" spanX="3" spanY="1" />
2. 休眠后默认屏保不显示时间
修改默认屏保应用
frameworks/base/core/res/res/values/config.xml
- <string name="config_dreamsDefaultComponent" translatable="false">com.android.deskclock/com.android.deskclock.Screensaver</string>
+ <string name="config_dreamsDefaultComponent" translatable="false">com.google.android.deskclock/com.android.deskclock.Screensaver</string>