Skip to content

Android SDK 打包指南

Exploring edited this page Jan 16, 2023 · 2 revisions

环境:只适用于 Mac 系统,针对 Windows 系统需要手动修改脚本文件中的 gradle 指令和文件路径名称。

1. 说明

SDK 在完成模块化之后,支持了按需集成,即可以让客户根据自己的需要集成对应的模块。于此同时 SDK 中出现多种打包方式,相关的打包脚本在 /sa-sdk-android/script_config 目录下。相关文件说明如下:

  • config.gradle:SDK 中依赖包的版本控制、脚本开关
  • maven.gradle:SDK 发布 maven 的任务配置
  • publish.sh:SDK 发布到 maven 的脚本配置
  • publishAAR.sh:SDK 打本地 aar 包

2. 本地 maven 包

本地 maven 包打包只需要在 terminal 中执行以下指令即可。注意:指令需在 SDK 项目工程的根目录。

sh script_config/publish.sh

执行完毕后会在项目根目录下生成 repo 包文件夹,然后参照本地 maven 集成方式即可。

image

3. 模块打包成 AAR

针对每个模块打包 aar 主要涉及到核心模块和其它业务模块。

3.1 打包核心模块

修改 script_config 文件夹下的 config.gradle 文件中的 publish 配置,将 isEmbedCoreAAR 修改为 true。

publish = [
        // true 打包核心模块,
        isEmbedCoreAAR : true,
        // true 打包全量包,此时 isEmbedCoreAAR 需为 false
        isEmbedSensorsSDKAAR : false
]

在 SDK 项目的根目录路径下执行一下指令:

sh script_config/aarPublish.sh

最终会在项目根目录下的 repo_aar 文件夹下生成对应的 aar。

3.2 打包业务模块

修改 script_config 文件夹下的 config.gradle 文件中的 publish 配置,将 isEmbedCoreAAR 修改为 false。

publish = [
        // true 打包核心模块,
        isEmbedCoreAAR : false,
        // true 打包全量包,此时 isEmbedCoreAAR 需为 false
        isEmbedSensorsSDKAAR : false
]

在 SDK 项目的根目录路径下执行一下指令:

sh script_config/aarPublish.sh

最终会在项目根目录下的 repo_aar 文件夹下生成对应的 aar。

image

3. 打包全量 SDK 整包

在一些场景下,会使用到 SDK 全量包 aar,这个时候就需要将各个模块打包成一个 aar。 修改 script_config 文件夹下的 config.gradle 文件中的 publish 配置,将 isEmbedSensorsSDKAAR 修改为 false,同时 isEmbedCoreAAR 需为 false。

publish = [
        // true 打包核心模块,
        isEmbedCoreAAR : false,
        // true 打包全量包,此时 isEmbedCoreAAR 需为 false
        isEmbedSensorsSDKAAR : true
]

在 SDK 项目的根目录路径下执行一下指令:

sh script_config/aarPublish.sh

最终会在项目根目录下的 repo_aar 文件夹下生成对应的 aar。

image