一、前述
开发板:Android7.1.1开发平台(附带Android7.1.1系统源码)
PC:win10操作系统
IDE:AndroidStudio
使用软件:VisualBox虚拟机,Ubuntu18.04稳定版系统
Android系统界面交互定制有一大部分内容修改的是SystemUI、Launcher系统应用。比如说修改分屏或者状态栏图标的时候需要修改SystemU或者主界面布局则是设计到Launcher。为了省去了每次都要编译源码的麻烦提高效率,可以把SystemUI、Launcher从系统源码抽取出来放在Android Studio中编译运行。买过的一个开发板附带了Android7.1.1源码,那么就用这个源码来做开发。虚拟机则安装Ubuntu18.04用于编译Android系统源码。
二、分析依赖库
Launcher比较独立一点, 直接拷贝出来放在Android Studio中运行即可。SystemUI由于依赖很多系统库,直接拷贝出来则会出现大量的错误。SystemUI在源码中的目录为:frameworks\base\packages\SystemUI。系统app源码编译一般都是通过编译Android.mk文件,SystemUI的Android.mk文件内容:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_SRC_FILES := $(call all-java-files-under, src) \
src/com/android/systemui/EventLogTags.logtags
LOCAL