RK3288 制作开机动画
Android 的开机动画是由 Linux 本地守护程序 bootanimation 专门控制实现的,其代码在 frameworks/base/cmds/bootanimation/ 目录下。
修改开机动画的方式有两种:
1、蒙版图片替换:
替换 frameworks/base/core/res/assets/images 目录下的两张图片文件,android-logo-mask.png 和 android-logo-shine.png。
android-logo-mask.png 是镂空蒙版图片,android-logo-shine.png是镂空蒙版后面的闪光图片,两张图片通过叠加移动达到动画效果。
(1)用 Photoshop 制作一张同样分辨率和格式的图片,要求背景为黑色,字体中间镂空,命名为 android-logo-mask.png。制作图片方法请找度娘。
(2)将制作好的图片android-logo-mask.png 复制到 frameworks/base/core/res/assets/images 目录下,替换掉以前的图片。
- $ cp -raf android-logo-mask.png frameworks/base/core/res/assets/images/
- // 防止源码不编译图片,需更新图片时间戳
- $ touch frameworks/base/core/res/assets/images/android-logo-mask.png
(3)重新编译模块
- $ source build/envsetup.sh
- $ lunch rk3288-eng
- $ mmm frameworks/base/core/res/
(4)生成新的 system.img
- $ make snod
(5)重新烧录并查看效果。
2、逐帧动画替换
创建 bootanimation.zip 文件,该压缩包文件里存放有逐帧动画和控制脚本,通过连续切换显示图片达到动画的效果。
文件 | 说明 |
desc.txt | 动画属性描述文件 |
part0 | 第一阶段动画图片目录 |
part1 | 第二阶段动画图片目录 |
(1)将第一部分图片按播放顺序命名好,保存在 part0 的文件夹中,例如:001.jpg、002.jpg(有的资料和书籍上强调必须为png格式图片,但是我在rk3288上测试,jpg格式也可以正常使用)
(2)将第二部分图片按播放顺序命名好,保存在 part1 的文件夹中,例如:001.jpg、002.jpg
(3)创建名称为 desc.txt 的文档,内容如下:
- p part0
- p part1
图片属性 | 1366(图片宽度) | 768(图片高度) | 15(每秒显示帧数) | 无 |
第一阶段动画属性 | p(默认标志符) | 1(循环次数为1) | 0(进入该阶段的间隔时间) | part0(该阶段图片的存放目录) |
第二阶段动画属性 | p(默认标志符) | 0(无限循环) | 10(进入该阶段的间隔时间) | part1(该阶段图片的存放目录) |
每秒显示帧数:每秒显示的图片数量。
间隔时间:该阶段结束后间隔多久进入下一阶段显示,单位为每张图片的显示时间。
(4)选中part0、part1和desc.txt进入自定义压缩,压缩文件格式为 zip,压缩方式为存储,命名为 bootanimation.zip。
(5)将压缩包拷贝到 device/*/$(TARGET_DEVICE) 目录下。例如:RK3288 的目录在 device/rockchip/rk3288/bootanimation.zip
(6)修改 device/*/$(TARGET_DEVICE)/$(TARGET_DEVICE).mk 文件。例如:RK3288 是 device/rockchip/rk3288/rk3288.mk
- // 在文件中添加,不使用逐帧动画时,用 # 屏蔽此行即可
- PRODUCT_COPY_FILES += device/rockchip/rk3288/bootanimation.zip:system/media/bootanimation.zip
(7)重新编译生成 system.img
- $ source build/envsetup.sh
- $ lunch rk3288-eng
- $ make snod
(8)重新烧录并查看效果。
逐帧动画的优先级比蒙版动画的优先级高,当使用了逐帧动画时,蒙版动画就不播放了。
RK3288 制作内核开机logo
RK3288 制作开机动画的更多相关文章
- RK3288 制作内核开机logo
安装工具 sudo apt-get install netpbm 1.制作图片 (1).图片为bmp格式 $ convert logo.bmp logo.png $ pngtopnm logo.png ...
- 理论制作 Windows 开机动画
第一次接触 Windows 开机动画是 2012 年,那时候魔方的版本号还是 3.12,魔方里面有个很酷炫狂霸拽的功能就是替换 Windows 7 的开机动画.一开始我是在IT之家论坛里下载开机动画, ...
- 开机logo以及两种修改开机动画方法
Android开机画面总共有三屏 一.第一屏:开机logo 1.选张png格式的图片,在Linux任意下执行(安装工具): sudo apt-get install pnmtoplainpm 2.在所 ...
- Android5.1开机LOGO与开机动画【转】
本文转载自:http://blog.csdn.net/u014770862/article/details/52624627 android5.1中,开机LOGO部分和之前版本的并不相同,主要区别在于 ...
- Android开机动画、logo、字样的定制过程【转】
本文转载自:http://blog.csdn.net/yinhaide/article/details/43668401 Android开机画面总共有三屏 一.第一屏:开机logo 1.选张png格式 ...
- RK3288 开机动画旋转
CPU:RK3288 系统:Android 5.1 如果开机动画与屏显示方向不一致,有两种方法可以更改开机动画方向. 一.RK3288默认的开机动画是由两张图片组合而成的,可以直接旋转两张图片的方向. ...
- Android 开机动画启动过程详解
Android 开机会出现3个画面: 1. Linux 系统启动,出现Linux小企鹅画面(reboot)(Android 1.5及以上版本已经取消加载图片): 2. Android平台启动初始化,出 ...
- OpenGL—Android 开机动画源码分析一
.1 Android开机动画实现方式目前实现Android开机动画的方式主要是逐帧动画和OpenGL动画. ?逐帧动画 逐帧动画是一种常见的动画形式(Frame By Frame),其原理是在“连续的 ...
- Android MTK平台最完备的开机动画修改教程
修改手机的开机动画不是什么难事儿. 但修改一款很冷门的"山寨机",就不太好修改第一屏了. 手机是MTK的一款手机,虽然比较贵(价格超过三星Note3),但在我看来跟山寨机木有啥区别 ...
随机推荐
- 【Python】测算代码运行时间
整理自这里和这里 timeit模块 timeit模块定义了接受两个参数的 Timer 类.两个参数都是字符串. 第一个参数是你要计时的语句或者函数. 传递给 Timer 的第二个参数是为第一个参数语句 ...
- Spring入门5.事务管理机制
Spring入门5.事务管理机制 20131126 代码下载 : 链接: http://pan.baidu.com/s/1kYc6c 密码: 233t 回顾之前的知识,Spring 最为核心的两个部分 ...
- 【python常见面试题】之python 中对list去重的多种方法
在python相关职位的面试过程中,会对列表list的去重进行考察.(注意有时会要求保证去重的顺序性) 1.直观方法 li=[1,2,3,4,5,1,2,3] new_li=[] for i in l ...
- SQL2008R2 收缩数据库问题 - 日志文件不变小
数据库的日志文件(*.ldf)越来越大,怎么办? 收缩吧.收缩日志文件的操作真不简单哟,还跟数据库的恢复模式有关啊. 一.“简单恢复模式”时的日志收缩 1. 截断日志 当数据库的恢复模式为“简单”的时 ...
- 通过ssh证书远程登录
在渗透中,经常会发现某管理员主机上保存了大量机器的公私钥用于ssh证书登录.这个时候可以通过这个证书进行远程登录. 先回顾下证书登录通常的配置方法 一.生成不带passphrase的公私钥证书实现免密 ...
- d3.js(v5.7)力导向图(关系图谱)
先上图,后面再一一解释: ok,为了方便理解,这里我就没有用之前封装的automatch函数来将数据和节点匹配了,如果你对enter(),exit()函数还不是很理解的话,请移步至我之前写的<n ...
- ajax请求-IE缓存处理
IE浏览器下使用GET发送请求时,如果两次请求的地址和参数相同,在不刷新页面的情况下,浏览器会缓存第一次的请求的内容,服务端更新后浏览器仍然显示第一次的内容 如在当前页面用户登录,在未登录的情况下,服 ...
- java作业调度框架Quartz
在软件开发中,很多时候需要在特定时间的时间执行某些操作,比如每天的凌晨三点.每周的周日.每个月的15号,Apache Quartz就是一个开源的作业调度框架,可以让计划的程序任务一个预定义的日期和时间 ...
- 简单说说什么是Restful
在确定要把自己的服务创建成RESTFUL之前,要明白什么样的服务什么是RESTFUL service(https://en.wikipedia.org/wiki/Representational_st ...
- postgresql与Oracle:空字符串与null
空字符串:两个单引号,中间无空格等任何内容 在postgresql中,空字符串与null是不同的:而oracle中,空字符串与null等同.测试如下: postgresql中: postgres=# ...