当前位置:   article > 正文

Android.mk和Android.bp_andorid.bp java_library

andorid.bp java_library
公司承接Android、iOS等APP开发、前后端网站开发、小程序开发、安全服务等项目!
公司官网:www.bincodesec.com

项目案例

一、编译不同类型的模块

1.编译成Java库

  1. Android.mk
  2. include $(BUILD_JAVA_LIBRARY)
  3. Android.bp
  4. java_library {
  5. }

2.编译成Java静态库

  1. Android.mk
  2. include $(BUILD_STATIC_JAVA_LIBRARY)
  3. Android.bp
  4. java_library_static {
  5. }

3.编译成App应用

  1. Android.mk
  2. include $(BUILD_PACKAGE)
  3. Android.bp
  4. android_app {
  5. }

4.编译成Native动态库

  1. Android.mk
  2. include $(BUILD_SHARED_LIBRARY)
  3. Android.bp
  4. cc_library_shared {
  5. }

5.编译成 Native 静态库

  1. Android.mk
  2. include $(BUILD_STATIC_LIBRARY)
  3. Android.bp
  4. cc_library_static {
  5. }

6.编译成 Native 执行程序​​​​​​​

  1. Android.mk
  2. include $(BUILD_EXECUTABLE)
  3. Android.bp
  4. cc_binary {
  5. }

7.编译成头文件库​​​​​​​

  1. Android.mk
  2. include $(BUILD_HEADER_LIBRARY)
  3. Android.bp
  4. cc_library_headers {
  5. }

二、文件路径

1.本地头文件路径​​​​​​​

  1. Android.mk
  2. LOCAL_C_INCLUDES :=
  3. Android.bp
  4. local_include_dirs: ["xxx", ""]

2.导出的头文件路径​​​​​​​

  1. Android.mk
  2. LOCAL_EXPORT_C_INCLUDE_DIRS :=
  3. Android.bp
  4. export_include_dirs: ["xxx", ""]

3.资源文件路径​​​​​​​

  1. Android.mk
  2. LOCAL_RESOURCE_DIR := $(LOCAL_PATH)/
  3. LOCAL_ASSET_DIR := $(LOCAL_PATH)/
  4. Android.bp
  5. resource_dirs: ["xxx", ""]

三、库依赖

1.依赖的静态库​​​​​​​

  1. Android.mk
  2. LOCAL_STATIC_LIBRARIES :=
  3. Android.bp
  4. static_libs: ["xxx", "xxx", ""]

2.依赖的动态库​​​​​​​

  1. Android.mk
  2. LOCAL_SHARED_LIBRARIES :=
  3. Android.bp
  4. shared_libs: ["xxx", "xxx", ""]

3.依赖的头文件库​​​​​​​

  1. Android.mk
  2. LOCAL_JAVA_LIBRARIES :=
  3. Android.bp
  4. header_libs: ["xxx", "xxx", ""]

4.依赖的Java库​​​​​​​

  1. Android.mk
  2. LOCAL_STATIC_JAVA_LIBRARIES :=
  3. Android.bp
  4. static_libs: ["xxx", "xxx", ""]

四、安装到不同分区中

1.安装到vendor中​​​​​​​

  1. Android.mk
  2. LOCAL_VENDOR_MODULE := true
  3. or
  4. LOCAL_PROPRIETARY_MODULE := true
  5. Android.bp
  6. proprietary: true
  7. or
  8. vendor: true

2.安装到product中​​​​​​​

  1. Android.mk
  2. LOCAL_PRODUCT_MODULE := true
  3. Android.bp
  4. product_specific: true

3.安装到odm中​​​​​​​

  1. Android.mk
  2. LOCAL_ODM_MODULE := true
  3. Android.bp
  4. device_specific: true

五、编译参数

1.C flags​​​​​​​

  1. Android.mk
  2. LOCAL_CFLAGS :=
  3. Android.bp
  4. cflags: ["xxx", "xxx", ""]

2.Cpp flags​​​​​​​

  1. Android.mk
  2. LOCAL_CPPFLAGS :=
  3. Android.bp
  4. cppflags: ["xxx", "xxx", ""]

3.Java flags​​​​​​​

  1. Android.mk
  2. LOCAL_JAVACFLAGS :=
  3. Android.bp
  4. javacflags: ["xxx", "xxx", ""]

推荐阅读

Android系统源码编译系列

Android14或更高版本(安全措施)

Android异常日志快速定位分析小技巧

Android O/P/Q/R及以上系统预置apk

Android ANR/Crash Log日志分析技巧总结

开发system权限的App并内置到Android系统

Windows/Linux/MacOS文本大文件Log日志分析工具

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小丑西瓜9/article/detail/392491
推荐阅读
相关标签
  

闽ICP备14008679号