【Android Gradle 插件】ProductFlavor 配置 ( multiDexEnabled 配置 | multiDexKeepFile | multiDexKeepProguard )
文章目录
Android Plugin DSL Reference 参考文档 :
-
AppExtension ( build.gradle#android 配置 ) 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.AppExtension.html
-
build.gradle#android 模块配置文档 : android-gradle-dsl/2.3/com.android.build.gradle.AppExtension.html
-
ProductFlavor ( build.gradle#android#defaultConfig 配置 ) 文档 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.ProductFlavor.html
-
ProductFlavor#externalNativeBuild 配置 ( build.gradle#android#defaultConfig#externalNativeBuild 配置 ) : com.android.build.gradle.internal.dsl.ProductFlavor:externalNativeBuild
-
ExternalNativeBuildOptions ( build.gradle#android#defaultConfig#externalNativeBuild 配置 ) 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.ExternalNativeBuildOptions.html
-
NdkBuildOptions ( build.gradle#android#defaultConfig#externalNativeBuild#ndkBuild 配置 ) 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.NdkBuildOptions.html
-
CmakeOptions ( build.gradle#android#defaultConfig#externalNativeBuild#cmake 配置 ) 文档位置 : android-gradle-dsl-gh-pages/2.3/com.android.build.gradle.internal.dsl.CmakeOptions.html
-
JackOptions ( build.gradle#android#defaultConfig#jackOptions 配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.JackOptions.html
-
AnnotationProcessorOptions ( 注解处理器配置 ) ( build.gradle#android#defaultConfig#javaCompileOptions配置 ) 文档位置 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.AnnotationProcessorOptions.html
-
NDK 参考文档 : Add C and C++ Code to Your Project.
一、ProductFlavor#multiDexEnabled 配置
ProductFlavor ( build.gradle#android#defaultConfig 配置 ) 文档 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.ProductFlavor.html
ProductFlavor#multiDexEnabled
配置 , 是一个 Boolean 值 , 是否开启分包 , 单个 Dex 文件限制 65535 个函数 , 当应用中的方法数超过
65
K
65K
65K , 就需要开启分包 ;
方法树的索引值是 short 类型 , 因此索引值只能是 0 0 0 ~ 65535 65535 65535 取值范围 ;
使用示例 :
android {
defaultConfig {
multiDexEnabled true
}
}
二、ProductFlavor#multiDexKeepFile 配置
ProductFlavor ( build.gradle#android#defaultConfig 配置 ) 文档 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.ProductFlavor.html
ProductFlavor#multiDexKeepFile
配置 , 是用于配置 分包规则的 ;
配置文件是 text 文本文件 ,
每一行表示一个分配到主 Dex 中的类 , 如
com/example/MyClass.class
表示 将上述 com/example/MyClass.class
类分配到主 Dex 文件中 ;
机翻文档 , 仅供参考 :
文本文件,指定将编译到主dex文件中的其他类。
文件中指定的类附加到使用aapt计算的主索引类。
如果设置了,文件每行应该包含一个类,格式如下:com/example/MyClass。班
三、ProductFlavor#multiDexKeepProguard 配置
ProductFlavor ( build.gradle#android#defaultConfig 配置 ) 文档 : android-gradle-dsl/2.3/com.android.build.gradle.internal.dsl.ProductFlavor.html
ProductFlavor#multiDexKeepProguard
配置 , 混淆配置 , 配置一个混淆文件 ;
机翻文档 , 仅供参考 :
文本文件,带有附加的ProGuard规则,用于确定哪些类被编译到主dex文件中。
如果已设置,则此文件中的规则将与生成系统使用的默认规则结合使用。
相关文章
- Android配置----DDMS 连接真机(己ROOT),用file explore看不到data/data文件夹的解决办法
- Android SlidingMenu 侧拉菜单的使用(详细配置)
- Java Web项目,Android和微信小程序的初始页面配置
- 【Kotlin 协程】协程简介 ( 协程概念 | 协程作用 | 创建 Android 工程并进行协程相关配置开发 | 异步任务与协程对比 )
- 【Android Gradle 插件】Android 依赖管理 ③ ( dependencies 依赖配置 | Project#dependencies 函数分析 | 自定义依赖配置 )
- 【Android Gradle 插件】Gradle 构建机制 ④ ( Gradle 构建生命周期 | 初始阶段 | 配置阶段 | 执行阶段 )
- 【Android Gradle 插件】Gradle 基础配置 ③ ( 生成 Gradle Wrapper 配置 | 分析生成的 gradle-wrapper.properties 配置文件 )
- 【Android Gradle 插件】TestOptions 配置 ⑤ ( Test 单元测试配置类 | 设置包含或排除单元测试 | 设置堆大小 | 设置测试前后执行的逻辑 )
- 【Android Gradle 插件】TestOptions 配置 ③ ( TestOptions#unitTests 脚本块配置 | UnitTestOptions 配置简介 )
- 【Android Gradle 插件】TestOptions 配置 ② ( TestOptions#animationsDisabled 属性配置 | Android 工程本地化测试与设备化测试 )
- 【Android Gradle 插件】LintOptions 配置 ⑦ ( explainIssues 属性配置 | htmlOutput 属性配置 | htmlReport 属性配置 )
- 【Android Gradle 插件】DexOptions 配置 ⑦ ( keepRuntimeAnnotatedClasses 属性配置 | maxProcessCount 属性配置 )
- 【Android Gradle 插件】DexOptions 配置 ④ ( additionalParameters 属性配置 | 使用 BuildType 配置多 dex 机制 )
- 【Android Gradle 插件】DexOptions 配置 ① ( BaseExtension#dexOptions 脚配块配置 | DexOptions 属性配置简介 )
- 【Android Gradle 插件】AaptOptions 配置 ④ (failOnMissingConfigEntry 配置|ignoreAssets/ignoreAssetsPattern配置)
- 【Android Gradle 插件】BuildType 编译类型配置 ⑧ ( versionNameSuffix 配置 | zipAlignEnabled 配置 | initWith 方法 )
- 【Android Gradle 插件】BuildType 编译类型配置 ⑦ ( BuildType#testCoverageEnabled 配置 )
- 【Android Gradle 插件】ProductFlavor 配置 ( ProductFlavor#buildConfigField 方法 | 单独编译生成 BuildConfig 类的任务 )
- 【Android Gradle 插件】ProductFlavor 配置 ( ProductFlavor#manifestPlaceholders 清单文件占位符配置 )
- 【Android Gradle 插件】ProductFlavor 配置 ( ProductFlavor#jackOptions 配置 | javaCompileOptions 配置 )
- 【Android 逆向】启动 DEX 字节码中的 Activity 组件 ( DEX 文件准备 | 拷贝资源目录下的文件到内置存储区 | 配置清单文件 | 启动 DEX 文件中的组件 | 执行结果 )
- 【Android 插件化】VirtualAppEx 编译运行 ( VirtualAppEx 简介 | 配置 VirtualAppEx 编译环境 | 编译运行 VirtualAppEx 代码 )
- Android Studio 安装与配置