Android-x86 5.1系统源码重定制开发----------预览(项目入口)

来源:互联网 发布:团队优化的原则包括 编辑:程序博客网 时间:2024/06/08 11:54

今天和大家分享的是Android-x86 5.1系统源码重定制开发--预览, 也是继上篇文章入门的延续.

       分享内容:

               状态栏位置调整函数跟踪

               SystemUI 函数预览

               StartupMenu (定制开始菜单) 添加过程预览(今天重点讲这个)

              

下面开始进行以上几点和大家分享:

    状态栏位置调整函数跟踪

              上篇文章跟踪到

              frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.Java 

       中的 addStatusBarWindow函数中,根据调用关系进入

              frameworks/base/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarWindowManager.java 中的add函数可看到原始状态栏位置加载的过程 ,修改gravity属性可改变状态栏的位置。

  二   SystemUI 函数预览:

         顾名思义及系统页面,和页面相关的就从布局入手 ,在PhoneStatusBar.java的makeStatusBarView函数中看到加载的父布局为super_status_bar 查看此布局可预览各个view的事件处理的代码逻辑。


  三 StartupMenu (定制开始菜单) 添加过程预览

       定制开始菜单就相当于做了一个app加载到手机上,不同的是你真机开发不需要关注一个app ,被系统认正,安装,到点击运行这么一个过程。另外不同的是 第三方app和系统app的区别。

       现在我就和大家分享一下如何手动添加一个app,修改哪里的文件属相可以让系统认证,成为系统app

       1. 系统认证

              所谓难着不会会着不难,当你知道了一件事怎么做的时候,会发现原来如此,so easy哈哈 其实这个就是这样:

          你首先要做的就是想好你app项目根目录的名称  如: StartupMenu  ,然后把这个根目录名称添加到                build/target/product/core.mk文件中就完成了认证工作。

       2.app添加位置

          app的添加位置最好在FrameWork/base下面进行添加

           一个app的文件最好是拷贝一个系统的app过来进行包名,系统配置文件的简单修改即可


       3.如何让系统调用并绘制到屏幕中

          如何系统如何加载布局涉及到显示,就不得不提到显示相关的android控件DisplayManagerService 它是android4.2开始提供的一个显示管理服务  跟踪函数开始菜单的显示是被Rect getInitializingRect()此方法所调用创建-绘制-显示的


 

原创粉丝点击