如何使用自定义启动动画编译AOSP项目?

15

我试图使用自定义的启动动画编译AOSP,但一直无法成功。我已经尝试了所有的方法,但都未能更改启动动画。为了更改启动动画,我已经完成了以下步骤:

  1. 创建一个.zip文件,包含以下结构: bootanimation.zip { desc.txt part0 { 000.png, 001.png, ... ..., 010.png } part1 { 011.png, 012.png, ... ..., 021.png } }

  2. 编辑system/core/include/private/android_filesystem_config.h中的权限

  3. 将bootanimation.zip文件放置在/system/media/目录下

然而,当Android启动时,它只显示Google商标,并跳过启动动画。请问有人能指出我缺少了什么吗?

PS: 我已经成功地编译了AOSP。它具有所有功能,并且能够正常启动。我的问题只是关于编译项目中的启动动画自定义。


1
你能解释一下完整的解决方案,以便其他人也可以使用吗? - 4aRk Kn1gh7
3
为了使用自定义的开机动画,Patrick需要编辑设备配置文件。在我使用的设备(LGE, Nexus 5 - Hammerhead)中,该文件位于<AOSP_TREE>/device/lge/hammerhead/full_hammerhead.mk。在这个文件中,我加入了指令"PRODUCT_COPY_FILES += vendor/<MY_COMPANY>/bootanimation/bootanimation.zip:system/media/bootanimation.zip",然后在被引用的厂商文件夹中,我放置了bootanimation.zip文件。通过这样做,在AOSP编译后,我的ROM文件就会生成自定义的开机动画了。 - Marcelo
2
mthama,我已经按照你说的方式进行了定义,但在编译时它会抛出错误“bootanimation.zip具有未知所有者。停止。”我推测这里我必须为新的bootanimation.zip文件定义权限。问题是在哪里以及如何定义? - AlexS
Woland,在我的项目结构中,bootanimation文件的完整路径是<AOSP_TREE>/vendor/<MY_COMPANY>/bootanimation/bootanimation.zip。你尝试过运行“ls -l”命令来检查所有权吗?当我运行ls命令时,我得到了这个结果:“-rw-r----- 1 mthama mthama 2620642 Jan 16 15:26 bootanimation.zip”。正如我们所看到的,文件所有者是我(第三个字段是文件所有者)。你觉得怎么样?也许如果你运行“chown”,你可以解决一些问题。 - Marcelo
也许你应该运行 "make clobber" 和 "make clean" 命令来清除之前编译的缓存文件。 - Marcelo
显示剩余3条评论
2个回答

7

@mthama写道:

好了。我解决了我的问题。问题是除了我做的所有事情之外,bootanimation.zip文件必须使用存储方法进行压缩。

解决方法是在打包存档时不使用任何压缩。在Linux上,可以使用以下命令实现:

zip -0r bootanimation.zip desc.txt part0 part1
-0选项表示不使用任何压缩,-r选项表示递归包含part0part1的内容。
还可以通过图形界面来完成此操作,例如使用7-Zip,如此答案所示:https://superuser.com/a/337087/295453

6

好的。我解决了我的问题。 问题在于除了我做的所有事情之外,bootanimation.zip文件必须使用存储方法进行压缩。


我即将进行相同的更改,你能否创建一个教程或更新这个帖子?你标记了你的答案,但是细节很少,你所说的“存储方法”是什么意思?这对我和其他开发人员来说将是一个巨大的帮助。 - mask
嗨,mask, store方法是一种压缩方法类型,您可以在使用zip时指定为选项。很抱歉我写了这个非常简略的答案。我之所以回答如此,是因为使用存储方法是解决我的问题的关键。显然,我们可以看出最好的方法是编写一个关于这个主题的好教程,因为AOSP是一个庞大而复杂的项目。目前,我想道歉,因为我没有时间写一些好的教程。如果您在实现自己的启动画面时遇到困难,请发送电子邮件至mthama@nic.br。我将非常乐意帮助。 - Marcelo
@mthama - 你能解释一下你是如何创建启动动画zip文件的,并且里面放了什么内容吗? - Rahul Iyer
@Marcelo 如果你在回答中包含修改构建文件以考虑bootanimation.zip文件的部分将会非常有用。 - Dean

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接