AndroidQ(10.0) 预制客供壁纸和铃声

简介: AndroidQ(10.0) 预制客供壁纸和铃声

预制客供壁纸


之前这个功能在 6.0 上修改过,已经是三年前了,之前壁纸选择还集成在 Launcher3 中,当时参考这篇


https://blog.csdn.net/jspping/article/details/50569097 进行的修改


Q 版本中已经独立出来了,在 WallpaperPicker 中进行修改


制作缩略图,将客户提供的壁纸丢给美工制作对应的缩略图,然后将所有资源图片放置到


vendor\mediatek\proprietary\packages\apps\WallpaperPicker\res\drawable-xhdpi


我这里预制两张,注意文件命名


vendor/mediatek/proprietary/packages/apps/WallpaperPicker/res/drawable-xhdpi/wallpaper_01.png                 
vendor/mediatek/proprietary/packages/apps/WallpaperPicker/res/drawable-xhdpi/wallpaper_01_small.png       
vendor/mediatek/proprietary/packages/apps/WallpaperPicker/res/drawable-xhdpi/wallpaper_02.png                 
vendor/mediatek/proprietary/packages/apps/WallpaperPicker/res/drawable-xhdpi/wallpaper_02_small.png 

将刚刚所添加的 png 壁纸名称配置 wallpapers.xml


vendor\mediatek\proprietary\packages\apps\WallpaperPicker\res\values-nodpi\wallpapers.xml

<resources>
    <string-array name="wallpapers" translatable="false">
        <item>wallpaper_01</item>
        <item>wallpaper_02</item>
    </string-array>
</resources>

调整获取默认壁纸尺寸大小值


vendor\mediatek\proprietary\packages\apps\WallpaperPicker\src\com\android\wallpaperpicker\WallpaperUtils.java


public static Point getDefaultWallpaperSize(Resources res, WindowManager windowManager) {
        if (sDefaultWallpaperSize == null) {
            Point realSize = new Point();
            windowManager.getDefaultDisplay().getRealSize(realSize);
            int maxDim = Math.max(realSize.x, realSize.y);
            int minDim = Math.min(realSize.x, realSize.y);
            // We need to ensure that there is enough extra space in the wallpaper
            // for the intended parallax effects
            final int defaultWidth, defaultHeight;
            if (res.getConfiguration().smallestScreenWidthDp >= 720) {
                defaultWidth = (int) (maxDim * wallpaperTravelToScreenWidthRatio(maxDim, minDim));
                defaultHeight = maxDim;
            } else {
                //defaultWidth = Math.max((int) (minDim * WALLPAPER_SCREENS_SPAN), maxDim);
                //defaultHeight = maxDim;
                //add begin set full screen  start
                defaultWidth = realSize.x;
                defaultHeight = realSize.y;         
                //add begin set full screen  end
            }
       //add begin set full screen  start
      //sDefaultWallpaperSize = new Point(defaultWidth, defaultHeight);
            sDefaultWallpaperSize = realSize;
      //add begin set full screen  end
        }
        return sDefaultWallpaperSize;
    }

预制客供铃声


这个没啥特殊的,确保格式是 ogg 就行

预制到 frameworks/base/data/sounds/ringtones/ogg/ 中

并修改 frameworks/base/data/sounds/AllAudio.mk 将其拷贝到 out 路径下即可


这里有个坑提醒一下


如果预制以后,发现系统铃声选择列表中少了或者名称不对,那么你需要修改下原文件的标题

你可以通过右键原文件详细信息里查看是否带有标题或者其它艺术家之类的信息,需要把这些都

删除方可正常。

目录
相关文章
|
安全 Android开发
Android 预置可卸载分区接收不到任何广播问题分析和解决
Android 预置可卸载分区接收不到任何广播问题分析和解决
468 0
|
安全 数据安全/隐私保护 Android开发
AVB源码学习(二):Uboot阶段AVB2.0校验流程
AVB源码学习(二):Uboot阶段AVB2.0校验流程
720 0
|
算法 Android开发
AVB源码学习(四):AVB2.0-libavb库介绍1
AVB源码学习(四):AVB2.0-libavb库介绍1
558 0
|
Java Android开发
Android OTG U盘无法显示在系统文件管理的修改
Android OTG U盘无法显示在系统文件管理的修改
192 0
|
Java Android开发
Android 长按电源键弹出的GlobalActions菜单
Android 长按电源键弹出的GlobalActions菜单
422 1
|
传感器 Java Android开发
Android HAL深入探索(1): 架构概述
Android HAL深入探索(1): 架构概述
1440 1
|
存储 物联网 数据库
Android 11 以上 SettingsProvider DatabaseHelper 解析
Android 11 以上 SettingsProvider DatabaseHelper 解析
1197 0
|
安全 编译器 API
Android HAL深入探索(5): 调试HAL报错与解决方案
Android HAL深入探索(5): 调试HAL报错与解决方案
2897 1
|
存储 缓存 安全
Rockchip系列之RK3568 Android设备固件和分区信息
Rockchip系列之RK3568 Android设备固件和分区信息
1701 0