工作原理

Android的系统登录动画有2种:

1:android自带的动画。

由前景和背景两张PNG图片组成,这两张图片存在于/system/framework /framework-res.apk文件当中,对应原文件位于/frameworks/base/core/res/assets/images/。前景图片(android-logo-mask.png)上的Android文字部分镂空,背景图片(android-logo-shine.png)则是简单的纹理。系统登录时,前景图片在最上层显示,程序代码(BootAnimation.android())控制背景图片连续滚动,透过前景图片文字镂空部分滚动显示背景纹理,从而实现动画效果。

2:多帧图片轮流播放形成的动画。

这个和放电影类似,动画文件为/out/target/product/dkb/system/media/bootanimation.zip 压缩包,当目录中没有bootanimation.zip时,系统会自动加载android自带的动画。bootanimation动画有2部分,分别是part0,part1。part0一般播放一次,part1一般循环播放,直到系统启动完毕。

相关文件:

/frameworks/base/cmds/bootanimation/BootAnimation.h

/frameworks/base/cmds/bootanimation/BootAnimation.cpp

/frameworks/base/cmds/bootanimation/bootanimation_main.cpp

/system/core/init/init.c

/system/core/rootdir/init.rc

制作步骤:

1:制作自带的动画:将/frameworks/base/core/res/assets/images/目录下的android-logo-mask.png和android-logo-shine.png,直接用2张相同分辨率的PNG-24图片替换就可以了,图片的名字要保持不变。然后重新编译打包即可。

2:制作多帧图片动画:

a:新建bootanimation文件夹,在bootanimation里面再新建2个目录part0,part1,和一个文本文件desc.txt 。

b:制作动画图片帧。用photoshop将导出的png图片保存为png-24格式,图片的名字要按顺序命名(例如:1.png,2.png,3.png……). 最后将动作连续的图片放到part0,和part1中。 part0,part1中当然可以放2组不同的动画图片。

c:desc.txt:这是一个保存形式为ANSI格式,用于设置这个动画像素(大小),帧数,闪烁次数,文件夹名称等;,一般格式如下:

480  800  25      //表示图片以480*800 的分辨率进行播放,每秒播放25张图片

p  1  0  part0    //p为标志符,意为将part0里面的图片顺序播放1次,间隔时间为0帧

p  0  2  part1    //表示将part1里面的图片播放0次(也就是循环播放),直到系统启动完毕。两次循环之间间隔2帧图片的时间。

其实只要一个part 也是可以的。

d:进入bootanimation 目录,将part0,part1,desc.txt 打包成bootanimation.zip 然后将此文件放在/out/target/product/sdkdemo/system/media/ 目录下即可。

Windows:打包成zip格式的压缩包,压缩方式要选存储,不然无法正常播放

Linux下打包的命令如下:

#zip  -O–r  ../bootanimation.zip   ./*

Linux指令必须使用 –O ,表示压缩等级为最低等级stored,即只打包不压缩,否则会由于打包格式的问题导致动画显示异常。

apk修改android开机画面,Android手机开机动画的修改相关推荐

  1. android怎么开机画面,安卓手机开机画面怎么修改?

    安卓手机开机画面怎么修改?相信很多人都不知道,安卓手机的开机画面竟然是可以修改的,如果你也想要修改自己手机的开机画面的话,就来看看安卓手机开机画面修改的教程吧. 简易教程: 1.手机必须ROOT了的 ...

  2. android手机 无电池开机画面,华为手机开不了机停在开机画面怎么办【详解】

    手机对于我们来说都是不陌生的,因为手机的发展太迅速了,同时也加快了手机的普及率.而智能手机的更新速度也是非常的快的.功能和性能也变得越来越好了,尤其是华为手机这几年变化真的是非常的大的,但是很多华为手 ...

  3. 红米手机android无法开机画面,Android自动化之遇到的坑——解决View Hierarchy不能启动...

    Android自动化之遇到的坑--解决View Hierarchy不能启动 走心原创第11期 解决View Hierarchy不能启动? ▲▲▲ 求助:红米为什么不能debug? 背景: 我装的是移动 ...

  4. android手机 无电池开机画面,安卓手机无法开机的6种解决方法

    现在安卓智能机十分普遍,但是也容易出现多重问题.关于手机不能开机是很多朋友都碰到的问题.那么手机不能开机怎么办?不用担心,下面学习啦小编就为大家介绍安卓手机突然无法开机的6种解决方法,希望可以帮到大家 ...

  5. 安卓linux开机画面,Android系统的开机画面显示过程分析(1)

    好几个月都没有更新过博客了,从今天开始,老罗将尝试对Android系统的UI实现作一个系统的分析,也算是落实之前所作出的承诺.提到Android系统的UI,我们最先接触到的便是系统在启动过程中所出现的 ...

  6. android 手机开机启动,手机怎么开机启动项 手机开机启动项方法【详解】

    很多时候,我们的手机开机后,会自动打开很多软件,这会让我们的手机运行速度变慢,那么,该怎么关闭?其实很简单只要打开开机启动项,将已经打钩的选项去掉即可.那么,如何打开开机启动项? 对于没有此选项的软件 ...

  7. android qq自动回复,关于手机QQ自动回复内容修改,设置自己想要的话

    手机QQ上面有很多的功能还是十分的实用,比如我们离线的时候,在手机QQ上面是可以设置自动回复的.但是这个自动回复的内容大部分都是直接系统回复的.有网友咨询能不能修改这个回复的内容,手机QQ自动回复内容 ...

  8. 鸿蒙系统手机开机,华为鸿蒙手机开机界面曝光!谷歌安卓被正式取代:打响全球OS争夺战...

    [5月27日讯]相信大家都知道,就在华为一纸官宣将会在6月2日晚8点召开鸿蒙操作系统及华为全场景新品发布会,届时华为将发布鸿蒙OS手机正式版系统,向众多华为手机用户批量推送升级鸿蒙OS系统,这也让华为 ...

  9. android os开机画面,Android简单实现启动画面的方法

    本文实例讲述了Android简单实现启动画面的方法.分享给大家供大家参考,具体如下: 核心代码: package com.demo.app; import android.app.Activity; ...

  10. 安卓突然自动关机 android正在启动,华为手机开机重启后老是显示安卓正在启动优化应用是为什么?...

    建议进入Recovery模式执行双清wipe操作.Recovery模式指的是一种可以对安卓机内部的数据或系统进行修改的模式(类似于windowsPE或DOS).在这个模式下可以刷入新的安卓系统,或者对 ...

最新文章

  1. sqlsever无法重新启动计算机,安装SQL server 提示重新启动计算机失败怎么处理
  2. 框架:Servlet的生命周期
  3. [图] DevOps:提速从研发到交付流程
  4. Leetcode--1160.拼写单词(Java)
  5. mysql cascade|restrict|no action|set null__mysql 外键的几种约束
  6. 返回封装结果集Result
  7. 前端H5 使用百度统计进行埋点
  8. 蒸汽密度的计算公式,蒸汽流量计密度补偿计算公式
  9. 1021 Deepest Root(dfs,图的联通子集个数,树的深度)
  10. 小丁带你走进git的世界三-撤销修改
  11. HDMI接口之HPD(热拔插)
  12. IDEA启动显示 找不到应用程序
  13. 信息论——JS散度(Jensen-Shannon)
  14. Discarded invalid param(s) “msg“ when navigating
  15. webstrom怎么配置git并提交
  16. 数学建模之灰色关联分析
  17. C#函数式编程风格-范型Filter,Map,Reduct函数的实现
  18. PHP对接淘宝客api完成APP引流优惠券
  19. 串口服务器的作用和工作原理是什么
  20. centos修改磁盘uuid_Centos7 查看硬盘的UUID | 吴老二

热门文章

  1. 为何要使用加密邮箱?
  2. 滴滴章文嵩:我们比AlphaGo面临的问题要复杂很多很多倍
  3. 环形10个树洞兔子c语言设计,树洞效应
  4. 双机热备概念原理及实现步骤
  5. 时序动作定位 | I3D(Inflated 3D ConvNet) 与 UNT(UntrimmedNets) 特征模型
  6. 信息系统规划方法-业务流程再造(BPR)
  7. submit的form表单提交事件
  8. 15种方法活力一整天
  9. poco库开发mysql_Poco数据库操作
  10. 可证明安全的密文策略基于属性加密(Provably Secure Ciphertext Policy ABE)