Android Gradle 插件ProductFlavor 配置 ( AppExtension#externalNativeBuild 配置 | cmake 配置 | ndkBuild 配置 )

Posted 韩曙亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android Gradle 插件ProductFlavor 配置 ( AppExtension#externalNativeBuild 配置 | cmake 配置 | ndkBuild 配置 )相关的知识,希望对你有一定的参考价值。

文章目录

Android Plugin DSL Reference 参考文档 :





一、ProductFlavor 配置



ProductFlavor 参考文档 : https://google.github.io/android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.ProductFlavor.html


1、AppExtension#externalNativeBuild 配置


externalNativeBuild 配置 : NDK 相关配置 , 可以在其中配置 cmake 或 ndk-build 选项 , 其中 cmake 是针对 CMakeLists.txt 构建脚本配置的 , ndkBuild 是针对 android.mk 和 Application.mk 构建脚本配置的 ;


android#defaultConfig 层级与 android 层级定义的 externalNativeBuild 配置是不同的 ;


1、AppExtension#externalNativeBuild 配置


android 层级的 externalNativeBuild 配置 , 定义在 AppExtension 中 ;

该 externalNativeBuild 是 ExternalNativeBuild 类型的 ;


ExternalNativeBuild 类型 , 其中定了 cmake 和 ndkBuild 两个属性 ;

  • cmake 配置是 CmakeOptions 类型的 ;
  • ndkBuild 配置是 NdkBuildOptions 类型的 ;


2、cmake 配置


cmake 配置是 CmakeOptions 类型的 , 参考 android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.CmakeOptions.html 文档 ;

android 
	externalNativeBuild 
		cmake 
			path "CMakeLists.txt"
		
	



3、ndkBuild 配置


ndkBuild 配置是 NdkBuildOptions 类型的 , 参考 android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.NdkBuildOptions.html 文档 ;

android 
	externalNativeBuild 
		ndkBuild 
			path "Android.mk"
		
	

参考文档 :

  • externalNativeBuild 配置 : com.android.build.gradle.internal.dsl.ProductFlavor:externalNativeBuild

  • ExternalNativeBuildOptions 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.ExternalNativeBuildOptions.html

  • NdkBuildOptions 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.NdkBuildOptions.html

  • CmakeOptions 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.CmakeOptions.html

  • AppExtension 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.AppExtension.html

  • NDK 参考文档 : Add C and C++ Code to Your Project.

以上是关于Android Gradle 插件ProductFlavor 配置 ( AppExtension#externalNativeBuild 配置 | cmake 配置 | ndkBuild 配置 )的主要内容,如果未能解决你的问题,请参考以下文章

Android Gradle 插件Gradle 自定义 Plugin 插件 ③ ( 自定义插件作用 | Android Gradle 插件的扩展 | 自定义 Extension 扩展 )

Android Gradle 插件Gradle 自定义 Plugin 插件 ⑥ ( 在 buildSrc 模块中依赖 Android Gradle 插件 | 完整代码示例 )

Android Gradle 插件Gradle 自定义 Plugin 插件 ⑥ ( 在 buildSrc 模块中依赖 Android Gradle 插件 | 完整代码示例 )

Android Gradle 插件Gradle 自定义 Plugin 插件 ② ( buildSrc 目录中实现 Gradle 插件 | 实现 Gradle 插件代码 | 模块引入插件并编译 )

Android Gradle 插件Android Module 模块 build.gradle 构建脚本 Groovy 语法分析 ① ( Gradle 二进制插件引入 | Gradle依赖配置 )

Android Gradle 插件Android Module 模块 build.gradle 构建脚本 Groovy 语法分析 ① ( Gradle 二进制插件引入 | Gradle依赖配置 )