android开发中,使用自己编译的sdk

元气小坏坏 提交于 2020-11-02 18:40:35

首先,编译自己的sdk

我自己使用的是LineageOS源码,按照 sdk/docs/howt_build_SDK.txt 文档的说明,只需要下面3个命令即可编译出sdk

. build/envsetup.sh
lunch sdk-eng
make sdk
或者为了加快编译速度,使用make -j8 sdk

但是,在我的环境下面,上面的命令编译并不成功,错误信息忘了,我用下面的方法进行编译

brunch potter   我的测试机型是potter
make sdk

上面的命令依然会报错,但是在 out/target/common/obj/PACKAGING/android_jar_intermediates 目录下面,会生成 android.jarandroid--stubs-src.jar 两个文件,将这个两个文件替换到Android Studio使用的sdk的对应平台目录下面,我使用的是api25,目录为 platforms/android-25/,即可使用自己添加的api,也可以将hide的api释放出来,SystemProperties类,这个类使用起来还是很方便的。

使用过程中的问题

由于需要使用自己的api,因此在 build.gradle 文件里,需要将compileSdkVersion和targetSdkVersion的值都修改为编译的api版本,我这里是25,因为只能使用25版本,因此不能使用比25版本高的特性,比如androidx,自己项目里引用的一些依赖如果也使用了androidx,也是不可以的,因此需要将这些依赖去除,我这里去除的有XUI、butterknife。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!