Android 编译手册

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

你可能感兴趣的:(Android,编译,android)