Android Studio 使用友盟进行多渠道打包

AndroidManifest.xml

<application>
<!--友盟-->
    <meta-data android:value="Umeng App Key" android:name="UMENG_APPKEY"/>
    <meta-data android:value="${UMENG_CHANNEL_VALUE}" android:name="UMENG_CHANNEL"/>
</application>

引入友盟移动统计依赖

api 'com.umeng.umsdk:common:2.1.0'
//移动统计
api 'com.umeng.umsdk:analytics:8.1.3'

配置多渠道

android {
    defaultConfig {
        flavorDimensions "versionCode"
    }

    //多渠道打包支持
    productFlavors {
        Default {  //默认版本, 服务端为生产环境
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "default"]
        }
        //渠道名称不能使用Test, 否则报错: ERROR: Cannot add task 'reportSourceSetTransformTest' as a task with that name already exists.
        //Umeng, test, unknown都是不可以的
        //Test {  //服务端为开发或测试环境
            //manifestPlaceholders = [UMENG_CHANNEL_VALUE: "test"]
        //}
        Develop {  //服务端为开发或测试环境
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "develop"]
        }
        Home {  //投放官网
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "home"]
        }
        Update {  //投放升级服务器
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "update"]
        }
        GooglePlay {  //投放GooglePlay
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "googleplay"]
        }
        Tencent {  //投放应用宝市场
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "tencent"]
        }
        Wandoujia {  //投放豌豆荚市场
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "wandoujia"]
        }
        Huawei {  //投放华为市场
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "huawei"]
        }
        Xiaomi {  //投放小米市场
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "xiaomi"]
        }
        Vivo {  //投放Vivo市场
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "vivo"]
        }
        Oppo {  //投放Oppo市场
            manifestPlaceholders = [UMENG_CHANNEL_VALUE: "oppo"]
        }
    }

//    productFlavors.all {
//        flavor -> flavor.manifestPlaceholders = [UMENG_CHANNEL_VALUE: name]
//    }
}

打包命令

使用gradlew assembleRelease打生产包;gradlew assembleDebug打测试包,通常上正式渠道只需要release包

..\gradlew.bat assembleDefaultDebug assembleDefaultRelease
..\gradlew.bat assembleDevelopDebug assembleDevelopRelease
..\gradlew.bat assembleGooglePlayDebug assembleGooglePlayRelease
..\gradlew.bat assembleHomeRelease assembleUpdateRelease assembleTencentRelease assembleWandoujiaRelease assembleHuaweiRelease assembleXiaomiRelease assembleVivoRelease assembleOppoRelease

集成友盟统计功能

基础统计集成:https://developer.umeng.com/docs/119267/detail/118588
高级功能集成:https://developer.umeng.com/docs/119267/detail/118637

UMConfigure.init(context, UMConfigure.DEVICE_TYPE_PHONE, "Umeng Message Secret");

// 选用AUTO页面采集模式
MobclickAgent.setPageCollectionMode(MobclickAgent.PageMode.AUTO);

// 支持在子进程中统计自定义事件
UMConfigure.setProcessEvent(true);
上一篇 AgentWeb调用JsBridge采坑记录
下一篇 Android 8.0 及以上集成友盟推送采坑记录
目录
文章列表
1 Spring Cloud Gateway 动态路由
Spring Cloud Gateway 动态路由
2
Spring Security OAuth2 password模式、refresh_token模式访问/oauth/token端点
Spring Security OAuth2 password模式、refresh_token模式访问/oauth/token端点
3
OKHttp锁定证书CertificatePinner
OKHttp锁定证书CertificatePinner
4
高等数学基础:导数的应用2:泰勒Taylor公式
高等数学基础:导数的应用2:泰勒Taylor公式
5
Linux echo 显示内容颜色
Linux echo 显示内容颜色
最新评论
一位WordPress评论者
一位WordPress评论者
2月12日
您好,这是一条评论。若需要审核、编辑或删除评论,请访问仪表盘的评论界面。评论者头像来自 Gravatar。