Android(安卓)编译手册
16lz
2021-12-04
Android 编译手册
1、Android source后使用hmm 和 make -h,make help 等命令查看帮助信息。
2、使用源码编译的情况下引入三方jar 包
- LOCAL_STATIC_JAVA_LIBRARIES = xxx
include $(BUILD_PACKAGE)
include $(CLEAR_VARS)
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES := xxx:libs/xxx.jar #实际目录
include $(BUILD_MULTI_PREBUILT)
- 引用第三方AAR文件
何为aar文件,aar包与jar包类似,区别就是aar文件包含Android的资源文件,如:布局、样式、图片等,如果按照源码中jar的引用方式会遇到编译不过的问题,提示找不到相关的资源文件。
在APK的Android.mk添加第三方AAR
创建libs/xxx.arr文件,修改Android.mk如下
…
LOCAL_AAPT_FLAGS += --auto-add-overlay
–extra-packages xxx
LOCAL_STATIC_JAVA_AAR_LIBRARIES:= xxx
…
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := optional
LOCAL_PREBUILT_STATIC_JAVA_LIBRARIES += xxx:libs/xxx.aar
include $(BUILD_MULTI_PREBUILT)
- 在新增的libs文件夹下加入Android.bp文件,新增如下内容
java_import {
name: “testlib_jar”,
jars: [“libs/testlib.jar”],
}
需要在android_app的主模块中新增上面定义的name的值
android_app {
name: “xxx”,
static_libs: [
“testlib_jar”,
],
- 查看overlay路径
get_build_var DEVICE_PACKAGE_OVERLAYS - 查看bootjar 里内容
cd out
grep -rin BOOTCLASSPATH .
out/target/product/xxxxx/root/init.environ.rc 文件中有BOOTCLASSPATH
更多相关文章
- NPM 和webpack 的基础使用
- 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
- android 混淆文件proguard.cfg详解
- ndk 编译android内核模块无法加载 解决方法
- Android之创建实时文件夹
- android系统信息获取
- [置顶] Android资源文件分析
- Android欢迎界面的创建方法
- Android——eclipse共享library以及导出jar包