Android9 系统编译 修改开机动画

参考文章
Android8.1 修改开机动画

开始:

我手上有一张gif图片。去百度找了个gif分解的网站,把gif分解为了180张图片。
如图在这里插入图片描述
把最后一张,也是完整显示的一张复制出来放到part0下,其余文件放在part1下,由于我前30张图是全白的空白图片,所以我删了,保留了后150张
创建desc.txt
内容如下:

1920 1280 25          // 开机动画大小为宽1920 高 1280,动画的显示速度为25帧每秒。
p 1 25 part0   // part1目录下png图片显示一次,循环间隔为25帧时间。
p 0 50 part1   // part2目录下png图片无限循环,循环间隔为50帧时间。

//part1最好设置为0,无限循环,否则可能会出现动画显示完黑屏

在这里插入图片描述

zip -r -X -Z store bootanimation part*/* desc.txt
adb remount
adb push '/home/ubuntu/下载/bootanimation.zip' /system/media/bootanimation.zip

这样开机就能显示新的动画了。后面的烧录参考文首的文章

下面就是本文的重点了:
Android的代码可扩展性比较强,也就导致了这个每份代码的bootanimation.zip代码目录不尽相同,所以就出现了很多博客里说的相应目录,这个目录可以自己定,关键是mk文件中怎么copy。
我这里是放在了device/mediatek/common/下面,然后在device/mediatek/common/device.mk中增加一句copy命令

PRODUCT_COPY_FILES +=
device/mediatek/common/bootanimation.zip:system/media/bootanimation.zip

然后说一下修改中遇到的问题
1、adb remount 没有权限
这是因为模拟器没有root,在运行模拟器上需要添加-writable-system
我的完整命令如下
emulator -partition-size 4096 -skin '1920x1280' -logcat w -writable-system

2、开机图片闪烁,错乱
这是因为当时下载图片的时候
图片命名frame1,frame10,frame100的时候,命令打包zip -r -X -Z store bootanimation part*/* desc.txt会出现frame100打包到前面,然后再打包frame2,造成顺序错乱。
需要将所有文件重新命名,frame1改为frame001,frame10改为frame010,这样打包就不会出现闪烁或者错乱的问题。还好ubuntu可以选中多个文件,右键重命名,批量修改。

3、动画显示不全,动画显示异常

388 353 25 // 开机动画大小为宽600 高 480,动画的显示速度为24帧每秒。
p 1 25 part0 // part1目录下png图片显示一次,循环间隔为25帧时间。
p 1 0 part1 // part2目录下png图片无限循环,循环间隔为0帧时间。

主要是这里出现的问题,这也是为什么需要放2个目录的原因。
因为android在开机启动后,先显示part0下的那张图片,之后会卡顿1-2秒,需要在卡顿之后再显示动画,不然会出现动画显示异常。所以我part0的参数是p 1 25,25帧停留时间加上动画显示速度是25帧,也就是停留一秒,再显示动画,需要根据自己机型去调试,这样就不会出现动画显示的问题了

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android 13系统开发中,替换开机动画需要进行以下步骤: 1. 准备开机动画文件,并将其保存到系统的正确位置。在Android 13中,开机动画文件通常是一个Zip文件,其中包含一系列PNG图片和描述动画的XML文件。 2. 在Android 13源代码中找到开机动画相关的文件。这些文件通常在frameworks/base/core/res/res/drawable-xxxx/目录下。其中,xxxx代表不同的屏幕密度。例如,drawable-hdpi是指高密度屏幕。 3. 将你的开机动画文件复制到相应的目录中。例如,如果你的开机动画文件是一个Zip文件,并且应该被放在drawable-hdpi目录中,则将该文件复制到frameworks/base/core/res/res/drawable-hdpi/目录中。 4. 在android.policy.jar文件中添加开机动画相关的代码。android.policy.jar文件通常位于frameworks/base/packages/SystemUI目录下。你需要使用一个dex2jar工具将该文件转换为jar文件,并使用Java反编译工具打开该文件。 5. 找到开机动画相关的代码,并将其替换为你自己的代码。在Android 13中,开机动画相关的代码通常在com.android.server.policy包中。 6. 编译Android 13源代码,并将编译后的系统刷入你的设备中。你的自定义开机动画就会被应用到设备上。 需要注意的是,修改Android 13系统开机动画需要具备一定的技术水平和经验,并且需要谨慎操作,以避免意外损坏设备。建议在进行此操作之前备份你的设备数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值