安卓中多渠道打包

今天简单记录下在安卓中的多渠道打包。

以下代码参考友盟多渠道打包。

首先在清单文件中加入以下代码:

  <meta-data
        android:name="UMENG_APPKEY"
        android:value="590a9************088d" />
    <meta-data
        android:name="UMENG_CHANNEL"
        android:value="${UMENG_CHANNEL_VALUE}" />

然后在Module 的build.gradle 中配置渠道:(android {}中)

  productFlavors {
    baidu {
        manifestPlaceholders = [UMENG_CHANNEL_VALUE: "baidu"]
        
    }
    xiaomi {
        manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"]

    }
    meizu {
        manifestPlaceholders = [UMENG_CHANNEL_VALUE: "meizu"]

    }
    c_360 {
        manifestPlaceholders = [UMENG_CHANNEL_VALUE: "360"]

    }
    tencent {
        manifestPlaceholders = [UMENG_CHANNEL_VALUE: "tencent"]

    }
    google {
        manifestPlaceholders = [UMENG_CHANNEL_VALUE: "google"]

    }

最后是自己的apk 输出名称和版本。

  buildTypes {
    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        debuggable false
        zipAlignEnabled true;//设置是否对APK包执行ZIP对齐优化
        shrinkResources true//打包时删除未使用的资源
        applicationVariants.all { variant ->
            variant.outputs.each { output ->
                def outputFile = output.outputFile
                if (outputFile != null && outputFile.name.endsWith('.apk')) {
                    // 输出apk名称
                    def fileName = "apk 名字${defaultConfig.versionName}_${variant.productFlavors[0].name}.apk"
                    output.outputFile = new File(outputFile.parent, fileName)
                }
            }
        }
    }
}

完成以上就可以了,赶快去试试~ 喜欢的点个赞~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

友情链接更多精彩内容