Android      aosp08-应用源码编译   
文章目录  [隐藏]


进入 %lineage%/packages 目录

一.直接内置apk文件到lineageos

1.目录准备

创建一个文件夹(名称自定义目录,如“happy/my”),将准备好的apk文件(如“my.apk”)放入。
创建 Android.mk 文件。
目录结构如下:​​​​​​​

2.Android.mk内容

3.将apk模块注册到系统

lineageOs中,可以加到和Settings模块相同的地方。
文件位置:build/make/target/product/handheld_product.mk
添加 myapk 加到 PRODUCT_PACKAGES 项中:

4.编译系统

$ croot
$ breakfast oneplus3
$ brunch oneplus3

out/target/product/jason/ 下得到系统卡刷包。

二.把androidstudio项目中的依赖模块编译为jar

1.目录准备

在 happy 下新建 myjar 文件夹。把AndroidStudio里开发的java模块中 lib、src及rules文件 放入。
在 happy/myjar 创建 Android.mk文件。
目录结构如下:​​​​​​​

$ ls -la
total 58480
drwxrwxrwx 2 root root 1月 1 18:22 .
drwxrwxr-x 3 root root 1月 2 02:25 ..
-rwxrw-rw- 1 root root 1月 1 18:29 Android.mk
-rwxrw-rw- 1 root root 11月 3 07:35 lib
-rwxrw-rw- 1 root root 11月 3 07:35 src


2.Android.mk内容

3.执行 mm指令编译

include $(BUILD_STATIC_JAVA_LIBRARY) 编译结果在 %lineage%/out/target/common/obj/JAVA_LIBRARIES/模块名_intermediates/
include $(BUILD_JAVA_LIBRARY) 编译结果会多1个目录在 %lineage%/out/target/product/generic_x86/system/framework/

4.编译系统。

lunch jason

三.把androidstudio项目中的app模块编译为apk

1.目录准备

在 happy 下新建 myapk,放入应用源码的 lib、src及rules文件
在 happy/myapk创建 Android.mk 文件。

2.Android.mk 文件

3.执行 mm指令编译

编译结果在 %lineage%/out/target/product/generic_x86/system/app/模块名/

四.把cpp代码编译为so

1.目录准备

在 happy 下新建 myso 文件夹,放入 c源码文件、jni.h文件
在 happy/myso 创建 Android.mk 文件。

2.Android.mk文件

3.下执行 mm指令编译

include $(BUILD_SHARED_LIBRARY) 编译结果在 %lineage%/out/target/product/generic_x86/system/lib/
include $(BUILD_EXECUTABLE) 编译结果在 %lineage%/out/target/product/generic_x86/system/bin/

承接App定制、企业web站点、办公系统软件 设计开发,外包项目,毕设