一分钟集成美团Walle多渠道打包

作者: 蓝不蓝编程 | 来源:发表于2018-10-12 09:08 被阅读2次

    背景:

    为了区分不同应用市场下载的包,对用户展开细分运营分析,需要对apk区分出不同的渠道。本文介绍集成美团Walle的具体实践步骤。

    集成方法:

    1.修改项目根目录下build.gradle文件,在buildscripts下的dependencies中增加:

    classpath 'com.meituan.android.walle:plugin:1.1.6'

    2.修改app工程的build.gradle文件,增加如下信息:

    1)头部增加:

    apply plugin: 'walle'
    

    2)确保有签名配置,下面是样例,

    signingConfigs {
            release {
                storeFile file("../test.jks")
                storePassword "123456"
                keyAlias "test"
                keyPassword "123456"
            }
            debug {
                storeFile file("../test.jks")
                storePassword "123456"
                keyAlias "test"
                keyPassword "123456"
            }
        }
        buildTypes {
            release {
                minifyEnabled true
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                signingConfig signingConfigs.release
            }
            debug {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
                signingConfig signingConfigs.debug
            }
        }
    
    image.gif

    3)增加如下配置(按照下面配置生成的渠道包在build/outputs/channels目录下,而不是build/outputs/apk目录):

    walle {
        // 指定渠道包的输出路径
        apkOutputFolder = new File("${project.buildDir}/outputs/channels");
        // 定制渠道包的APK的文件名称
        apkFileNameFormat = '${appName}-${packageName}-${channel}-${buildType}-v${versionName}-${versionCode}-${buildTime}.apk';
        // 渠道配置文件
        channelFile = new File("${project.getProjectDir()}/channel")
    }
    

    4)在dependencies中增加:

    implementation 'com.meituan.android.walle:library:1.1.6'
    
    image.gif

    3.在app工程下新建文件channel,放置渠道信息(根据实际需要修改):

    xiaomi
    360
    huawei
    vivo
    

    4.获取渠道样例:

    String channel = WalleChannelReader.getChannel(this.getApplicationContext());

    image.gif

    5.对于要设置到友盟里去,则需要参考友盟的设置方法。

    6.打包命令(更多命令及用法参考附录官方指导):

    mac:./gradlew clean assembleReleaseChannels
    windows:gradlew clean assembleReleaseChannels

    7.生成多渠道包截图:

    image.png

    附录:

    1. Demo github:https://github.com/cxyzy1/walle_demo.git

    2. 美团walle github地址:https://github.com/Meituan-Dianping/walle

    相关文章

      网友评论

        本文标题:一分钟集成美团Walle多渠道打包

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