美文网首页Android科普知识库
Android 构建变体的lib库配置

Android 构建变体的lib库配置

作者: 蚍蜉一生 | 来源:发表于2024-09-22 19:41 被阅读0次

    在看本文之前建议先了解下《源集理解》《buildType和productFlavors相同和差异》《渠道包基础认知》。

    在《源集理解》一文中有介绍,代码,资源、配置文件、jniLib怎么做好配置和区分,那么有同学问,libs下面的包呢?

    首先 ,如果所有渠道包对应的构建变体都使用相同的lib库(jar包或者aar),那就无需做这个lib库的配置;如果有不同,则需要我们进行lib库在不同构建变上(大多数情况只需要在风味维度上做配置,这个原因可以留做一个思考题)的配置,一半有两种常见的方案:

    一、根据不同的风味使用不同的依赖lib地址

    假设定义的产品风味有:

      flavorDimensions "so"
        productFlavors {
            so64 {
                dimension "so"
            }
            so32 {
                dimension "so"
            }
    
        }
    

    对应依赖配置:

    dependencies {
       so32Api fileTree(include: ['*.jar', '*.aar'], dir: 'libs/so32')
       api fileTree(include: ['*.jar', '*.aar'], dir: 'libs/so64
    }
    

    lib对应存放配置:

    lib位置

    二、不同的风味包引用不同名称的lib库

    假设定义的产品风味有:

      flavorDimensions "so"
        productFlavors {
            so64 {
                dimension "so"
            }
            so32 {
                dimension "so"
            }
    
        }
    

    对应依赖配置:

    dependencies {
        so32Implementation(name:jiami-sdk-32, ext: 'jar')
        implementation(name:jiami-sdk-64, ext: 'jar')
        }
    

    libs目录展示:


    libs展示

    除了这两种方案,您还有什么方案么?继续学习gradle 构建,方案还有很多。

    相关文章

      网友评论

        本文标题:Android 构建变体的lib库配置

        本文链接:https://www.haomeiwen.com/subject/frrxrjtx.html