Eclipse打android framework jar,Android Studio 配置使用framework jar 包

????准备

1.创建eclipse android 项目(随便创建一个)
2.framework 放置如图(不用编译,忽略任何错误)
Eclipse打android framework jar,Android Studio 配置使用framework jar 包

⭐️开始编译jar

1.选中工程,右键,显示如下列表选中Export
Eclipse打android framework jar,Android Studio 配置使用framework jar 包
2.选中JAR file,点击next
Eclipse打android framework jar,Android Studio 配置使用framework jar 包
3.选中src中的framework 目录,选中.classpath .project(可选可不选),其他配置如图,然后点击next
Eclipse打android framework jar,Android Studio 配置使用framework jar 包
Eclipse打android framework jar,Android Studio 配置使用framework jar 包
4.配置如下
Eclipse打android framework jar,Android Studio 配置使用framework jar 包

Eclipse打android framework jar,Android Studio 配置使用framework jar 包
5.点击finish即可(编译过程中已忽略任何错误了)
6.反编译查看jar目录结构,如下图
Eclipse打android framework jar,Android Studio 配置使用framework jar 包

✌️Android studio使用framework jar包

1.优先使用我们自己的jar,工程目录下的gradle
Eclipse打android framework jar,Android Studio 配置使用framework jar 包
2.app目录下的gradle配置
Eclipse打android framework jar,Android Studio 配置使用framework jar 包

????总结

使用framework的jar包,工程仍然显示错误但不影响我们编译
即使class文件的方法都是throw new Error… 也不影响。
它只是为了编译通过(compileOnly),最终调用的方法都是系统里的方法.
目的:使用@hide方法,变量。
注意: 系统lib不要放在libs目录下,随便创建一个如system_libraries的目录,与libs在同一级即可。如果执意放在libs目录下反编译后会发现,compileOnly无作用,系统lib会被打包进class中。如果lib被打进class中app不会使用系统的真实接口,如果lib与这个系统真实接口有差异的话,会引发不必要的麻烦。(实际项目中总结出来的问题,编译环境Android Studio3.4)。