如何在AOSP v10中添加壁纸至wallpaper picker供主屏幕选用
AOSP 10 添加自定义默认壁纸到系统选择器操作步骤
系统壁纸选择器读取的内置静态壁纸资源存放在WallpaperPicker应用模块下,按以下步骤操作即可:
- 放置壁纸资源文件
将准备好的自定义壁纸(建议匹配设备主流分辨率,支持jpg/png格式),按照安卓资源命名规则(全小写,仅使用字母、数字、下划线,不能以数字开头)重命名后,拷贝到源码路径packages/apps/WallpaperPicker/res/drawable-nodpi/下。如果需要做屏幕密度适配,可以将对应分辨率的资源分别放到drawable-xxhdpi/drawable-xxxhdpi等对应密度目录,系统会自动匹配加载,无适配需求统一放nodpi目录即可。 - 注册壁纸到可选列表
打开同模块下的配置文件packages/apps/WallpaperPicker/res/values/wallpapers.xml,在名为wallpapers的string-array节点下,为每一张新增的壁纸添加item条目,item内容填写壁纸文件名(不带文件后缀),参考示例:
<string-array name="wallpapers" translatable="false"> <!-- 原有系统壁纸条目保留,不要删除 --> <item>default_wallpaper</item> <!-- 新增自定义壁纸条目 --> <item>custom_mountain_wp</item> <item>custom_ocean_wp</item> </string-array>
- 编译验证
重新编译WallpaperPicker模块,刷入编译生成的镜像或模块包后,新增壁纸就会显示在系统壁纸选择器的默认可选区域,支持用户选择设置为主屏/锁屏壁纸。
注意:不要将壁纸放到
frameworks/base/core/res/res/drawable-nodpi/目录下,该目录存放的是系统首次启动的兜底默认壁纸,不会被壁纸选择器扫描加入可选列表,放错路径不会生效。
内容的提问来源于stack exchange,提问作者Anurag Kushwaha
相关产品推荐
相关产品推荐

