AOSP开发:如何在Android.bp中添加非标准依赖(如okhttp)
给AOSP系统应用添加OkHttp外部依赖的具体步骤
1. 将第三方库纳入AOSP源码树
- 在AOSP的
external目录下创建okhttp和okio两个子目录(OkHttp依赖Okio,必须同时引入) - 下载对应版本的OkHttp、Okio AAR包,分别放到上述两个目录中
2. 为每个依赖编写预编译库配置
在external/okhttp/Android.bp中添加以下内容(替换AAR文件名和版本):
prebuilt_android_aar { name: "okhttp", aar: "okhttp-4.12.0.aar", sdk_version: "current", }
在external/okio/Android.bp中添加:
prebuilt_android_aar { name: "okio", aar: "okio-3.6.0.aar", sdk_version: "current", }
3. 修改系统应用的构建配置
更新你的MySystemApp的Android.bp,将依赖加入static_libs列表:
android_app { name: "MySystemApp", srcs: ["java/**/*.kt"], resource_dirs: ["res"], manifest: "AndroidManifest.xml", static_libs: [ "androidx.core_core", "okhttp", "okio", ] }
4. 构建应用
在AOSP根目录执行以下命令完成构建:
source build/envsetup.sh lunch <你的产品配置> make MySystemApp
注意事项
- 确保下载的AAR版本与AOSP当前使用的SDK版本兼容
- 若使用OkHttp源码而非AAR,需编写
android_library类型的Android.bp,处理Kotlin源码编译及内部依赖 - 若编译时出现缺少依赖的错误,需排查并添加对应库的预编译配置
内容的提问来源于stack exchange,提问作者Darbio
相关产品推荐
相关产品推荐

