Android培训班(37)
<!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } -->
在init.rc文件里,可以看到加载下面的服务:
service bootanim /system/bin/bootanimation
user graphics
group graphics
disabled
oneshot
bootanimation 服务的代码在目录:
Android-2.0/frameworks/base/cmds/bootanimation
bootanimation 服务是开机动画,主要用来加载动画资源。
它的主要入口函数代码如下:
int main(int argc, char** argv)
{
#if defined(HAVE_PTHREADS)
setpriority(PRIO_PROCESS, 0, ANDROID_PRIORITY_DISPLAY);
#endif
这段代码设置进程的优先级。
char value[PROPERTY_VALUE_MAX];
property_get("debug.sf.nobootanimation", value, "0");
这行代码从属性里获取是否显示开机动画,如果为1就不显示。
int noBootAnimation = atoi(value);
LOGI_IF(noBootAnimation, "boot animation disabled");
if (!noBootAnimation) {
这段代码判断是否显示开机动画。
sp<ProcessState> proc(ProcessState::self());
ProcessState::self()->startThreadPool();
启动开机动画的线程。
// create the boot animation object
sp<BootAnimation> boot = new BootAnimation();
创建开机动画对象。
IPCThreadState::self()->joinThreadPool();
运行开机动画线程。
}
return 0;
}
相关文章
- android-sdk和api版本
- Android学习---数据库的增删改查(sqlite CRUD)
- Android学习笔记(37):用Configuration类获取和监听设备信息
- Android 中文API (37) —— AbsoluteLayout
- Android问题关于Button控件在布局中正常顺序出现的遮盖其他控件
- Android ExpandableListView实现列表可扩展点击显示内容或隐藏内容
- android stdio的自动补齐功能
- Android 9.0 系统settings app详情页控制开启关闭流量数据的开关
- Android 9.0 SystemUI 状态栏屏蔽弹出的悬浮式通知
- Android 自定义展开收缩旋转菜单
- Android音视频开发之获取视频默认状态总时长
- 【Android Gradle 插件】Gradle 自定义 Plugin 插件 ② ( buildSrc 目录中实现 Gradle 插件 | 实现 Gradle 插件代码 | 模块引入插件并编译 )
- 【Android 安装包优化】Android 应用中 7zr 可执行程序准备 ( Android Studio 导入可执行 7zr 程序 | 从 Assets 资源文件拷贝 7zr 到内置存储 )
- Android在线源码
- Android学习笔记(一)——安卓开发环境搭建
- 【Android-Jetpack进阶】4、LiveData:Activity 监听数据变化,用 LiveData + ViewModel 在 Fragment 间共享数据
- Android kotlin (美团app左右滑动菜单栏)用RecyclerView(androidx+BRVAH3.0.6)实现ViewPager(androidx+左右滑动)菜单栏功能
- android之AString类型介绍(二十二)