最近整理了一下关于系统源码编译的笔记,并且迁移到csdn.方便以后自己编译使用.
输入设置:
LOCAL_DEX_PREOPT = false
说明:
include $(BUILD_PACKAGE)就意味着开始编译了,所以在编译之前加上
打开文本编辑器指令:
------修改写入编译
-----清空原本编译文件 mm -B
--修改并且使用
---------------修改手机启动动画,
刷入文件权限问题:
问题:
failed to copy 'bootanimation.zip' to '/system/media/bootanimation.zip': couldn't create file: Read-only file system
解决处理:
可以使用的adb路径: cd /home/lsh/bin/WORKING_DIRECTORY/out/host/linux-x86/bin
./adb root
./adb remount
./adb push bootanimation.zip /system/media
解决方案:由于本身自带的adb版本过低,需要使用源码中自带的adb工具
标准的用法:
开机动画讲解:
关机词:开机动画,系统启动动画
二、修改开机动画
1.开机时,系统自动检测在/system/media或/data/local/目录有没有bootanimation.zip文件。
如果有,这按照bootanimation.zip里面的png排列顺序依次显示开机图片,开起来就是动画效果;
否则按照android默认的方式显示开机动画:frameworks/base/core/res/assets/images
2./system/media/bootanimation.zip //bootanimation.zip里包含desc.txt和图片part0,part1(为目录)
Android 8.0系统下,在如下图的位置
packages / services / Car / car_product / bootanimations / square_280 / bootanimation.zip
指令:详细见:https://blog.youkuaiyun.com/u010164190/article/details/80198027
一、修改由kernel显示的开机logo
1、安装pngtopnm
# sudo apt-get install netpbm
安装完以后就会生成pngtopnm、pnmquant、pnmtoplainpnm三个工具
2、制作logo图片
将logo图片保存为mylogo.png,注意扩展名为png。
3、制作.ppm格式的图片
# pngtopnm mylogo.png > mylogo.pnm
# pnmquant 224 mylogo.pnm > mylogo224.pnm
# pnmtoplainpnm mylogo224.pnm > logo_linux_clut224.ppm
4.拷贝文件到相应目录
用logo_linux_clut224.ppm替换kernel/drivers/video/logo目录下的同名文件,删除对应的.o文件并重新编译内核即可。
5.内核的配置
内核中除了要选中 Graphics support项下的 Bootup logo配置项外,还要选中 Console display driver support配置项。否则kernel不会显示logo。
二、修改开机动画
1.开机时,系统自动检测在/system/media或/data/local/目录有没有bootanimation.zip文件。
如果有,这按照bootanimation.zip里面的png排列顺序依次显示开机图片,开起来就是动画效果;
否则按照android默认的方式显示开机动画:frameworks/base/core/res/assets/images
2./system/media/bootanimation.zip //bootanimation.zip里包含desc.txt和图片part0,part1(为目录)
desc.txt内容:
320 480 30
p 1 0 part0
p 0 0 part1
分辨率:320:宽 480:高 30:每秒播放30张图片
p 1(只播放一次) 0(空指令) part0(代表part0文件夹内图片只按名称顺序播放一次)
p 0(重复播放) 0(空指令) part1(代表part1文件夹内的图片会循环播放)
zip压缩命令:
# zip -r -X -Z store bootanimation part*/*.png desc.txt
3.push到系统
# adb push bootainimation.zip /system/media
或者:在device.mk里添加
PRODUCT_COPY_FILES += vendor/bootanimation.zip:/system/media/bootanimation.zip
详细说明:
desc.txt文件的格式为:
480 250 15
p 1 0 part0
p 0 10 part1
其中各个参数的意义为:
480 250 15
图片的宽 图片的高 每秒显示的帧数
p 1 0 part0
标识符 循环的次数 阶段切换间隔时间 对应图片的目录
p 0 10 part1
标识符 循环的次数 阶段切换间隔时间 对应图片的目录
标识符:p 是必须的。
循环次数:指该目录中图片循环显示的次数,0表示本阶段无限循环。
每秒显示的帧数:就是每秒显示的图片数量,决定每张图片显示的时间。
阶段切换间隔时间:指的是该阶段结束后间隔多长时间显示下一阶段的图片,其单位是每张图片显示的时间。
对应图片的目录:就是该阶段动画的系列图片,以图片文件目录的顺序显示动画,而且图片的格式必须要为PNG。