Platform: Android Studio 4.3.1
OS: Ubuntu14.04
1. 修改Android源码,将需要用到的API的"@hide"注解去掉
然后单独编译frameworks (即mmm frameworks/base);
编译生成的中间文件在out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/
2.将编译好的framework放到AndroidStudio项目中
将源码目录out/target/common/obj/JAVA_LIBRARIES/framework_intermediates/classes.jar文件,复制到AndroidStudio项目的app/sdk下面并重命名为android23.jar(即android$(api-level).jar).
修改AndroidStudio项目中的build.gradle(Project),在allprojects节点中添加以下内容,配置在编译时使用android23.jar
gradle.projectsEvaluated {
tasks.withType(JavaCompile) {
options.compilerArgs.add('-Xbootclasspath/p:app/sdk/android23.jar')
}
}
修改AndroidStudio项目中的build.gradle(Module),在dependencies节点中添加以下内容,配置让android23.jar只在编译时使用,不会打包到apk中.
compileOnly files('sdk/a