友盟多渠道获取渠道名,后台显示市场标识

友盟多渠道获取渠道名,后台显示市场标识

类似用户登录app获取用户是什么手机。运营人员在各大应用商店运营APP,我们负责给他们各个应用商店的渠道包。这里我介绍一下我用到的友盟 。

注册友盟账号新建应用这里就不多说了。这里都有详细的接入文档,记录方便日后所需。

友盟多渠道获取渠道名,后台显示市场标识

1、在AndroidManifest.xml 的application中添加

<!--所需权限-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>


<meta-data
            android:name="UMENG_APPKEY"
            android:value="" />
        <meta-data
            android:name="UMENG_CHANNEL"
            android:value="${UMENG_CHANNEL_VALUE}" />

这个地方注意 android:value=”${UMENG_CHANNEL_VALUE}” 值的配置

要与build.gradle文件中配置保持一致

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

2、在build.gradle中添加所需要的渠道

productFlavors {
        oppo {}
        vivo {}
        _360 {}
        meizu {}
        baidu {}
        xiaomi {}
        yinyou {}
        huawei {}
        anzhi {}
        le {}
        pp {}
        muma {}
        shaxin {}
        shixi {}
        jb {}
    }

友盟多渠道获取渠道名,后台显示市场标识

这个时候你Sync Now 应该会出现一个错误

ERROR: All flavors must now belong to a named flavor dimension. Learn more at https://d.android.com/r/tools/flavorDimensions-missing-error-message.html
Affected Modules: app

大概意思是:所有味道现在必须属于一个命名的味道维度

这个时候在 defaultConfig中加入 flavorDimensions “versionCode” 就完美解决了渠道接入,来源

 

3、最后一步在注册的接口传递参数和后台配合

String frommarket = null;
ApplicationInfo info = null;
        try {
            info = getContext().getPackageManager().getApplicationInfo(getContext().getPackageName(), PackageManager.GET_META_DATA);
            frommarket = info.metaData.getString("UMENG_CHANNEL");
        } catch (PackageManager.NameNotFoundException e) {
            e.printStackTrace();
        }
        all.put("channel", frommarket);

frommarket 即就是我们所需要的渠道号,我们传给后台,后台保存就好。

 

相关阅读:

Attribute meta-data#UMENG_CHANNEL@value at AndroidManifest.xml:189:13-51 requires a placeholder substitution but no value for <UMENG_CHANNEL_VALUE> is provided. app main manifest (this file), line 188 Error: Validation failed, exiting app main manifest (this file)

 

关于混淆可以移步去友盟看官网的记载。

纸上得来终觉浅,书到用时方恨少。共勉。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114981.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • RC电路知识讲解「建议收藏」

    RC电路知识讲解「建议收藏」RC电路是指由电阻R和电容C组成的电路,他是脉冲产生和整形电路中常用的电路。1.RC1.RC充电电路电源通过电阻给电容充电,由于一开始电容两端的电压为0,所以电压的电压都在电阻上,这时电流大,充电速度快。随着电容两端电压的上升,电阻两端的电压下降,电流也随之减小,充电速度变小。充电的速度与电阻和电容的大小有关。电阻R越大,充电越慢,电容C越大,充电越慢。衡量充电速度的常数t(tao)=RC…

    2025年7月31日
    4
  • 开源代码网站

    开源代码网站!!!github!!!codepen!!!码云(1)到sourceforge上查找相关代码;(2)到google code上面查找具体的代码;(3)到apache网站上寻找java的相关代码;(4)直接到开源项目网站上面寻找代码;(5)到csdn等网站下载代码,偶尔会有意外的收获;(6)到图书出版社下载图书附录的代码;

    2022年7月15日
    14
  • 爬虫415(UNsupported media type)问题解决

    爬虫415(UNsupported media type)问题解决爬虫遇到的问题:这两天做爬虫遇到些问题,我在这里总结一下,希望能够和大家分享,共同学习,共同进步。今天在我爬某个网站的时候,返回的结果是415,不支持的媒体类型(Unsupportedmediatype),当时遇到这个问题的时候,我有点蒙,什么是媒体,在这里先不管他什么是媒体,反正就是报错,但是能肯定的是415错误肯定是请求的问题。那么我就开始顺着我的爬虫经验挨个排除。1、我的IP有没有被封

    2022年6月5日
    50
  • 时钟模块ds1302的使用软件_ds1302时钟程序详解

    时钟模块ds1302的使用软件_ds1302时钟程序详解  刚刚学习了如何使用ds1302这个时钟芯片的使用,现在我把学习的过程分享出来,虽然整体的过程感觉不算难,但是仍然有难解之处至今未明,因为没有去实际验证,所以也不能确定到底是什么原因。  1.首先,查找ds1302手册,可以在21ic这个网站上下载。如果嫌英文版的自己翻译的很难受(这里还是建议大家硬着头皮看英文版的,毕竟是有好处的,你说呢?),可以在网上找中文版的。  2.通过手册…

    2025年7月1日
    2
  • html爱心特效代码

    html爱心特效代码<!DOCTYPEHTMLPUBLIC”-//W3C//DTDHTML4.0Transitional//EN”><HTML><HEAD><TITLE>NewDocument</TITLE><METANAME=”Generator”CONTENT=”EditPlus”><METANAME=”Author”CONTENT=””><METANAME=”Keywor…

    2022年7月19日
    24
  • python程序编写简介

    语句和语法变量的定义和赋值内存管理内存管理引用计数增加引用计数减少引用计数自动回收机制(python独有的)实例:python对象标识符专用下划线标识符_xxx:不能用from

    2022年3月29日
    58

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号