DCloud_HB_WDL
DCloud_HB_WDL
  • 发布:2019-05-31 16:01
  • 更新:2019-08-02 16:43
  • 阅读:9237

HBuilderX: Android 自定义渠道包

分类:HBuilderX

HBuilderX 2.0 支持打Android渠道包了!

如何打渠道包?

选中项目 --> 【原生打包】,进入打包窗口。

如上图所示,

HBuilderX默认提供 7 个渠道(Google360小米华为应用宝vivooppo),更多可以在manifest.json文件中【源码视图】进行配置。

默认渠道 渠道标识ID
GooglePlay google
应用宝 yyb
360应用市场 360
华为应用商店 huawei
小米应用商店 xiaomi
vivo应用商店 vivo
oppo应用商店 oppo

注意:提交谷歌应用市场(Google Play)时一定要将渠道标识设置为google

如何自定义渠道?

在manifest.json【源码视图】中, 根节点增加channel_list字段.

注意是根节点

{  
    "channel_list":[  
        {  
            "id":"",  
            "name":""  
        }  
    ]  
}

比如:

{  
    "channel_list":[  
        {  
            "id":"chuizi",  
            "name":"锤子应用市场"  
        },  
               {  
            "id":"meizu",  
            "name":"魅族应用市场"  
        }  
    ]  
}

配置后会在上面的云端打包界面显示自定义j渠道,提交云端打包时需要勾选才能生效

离线打包的配置方法

下载最新的sdk,在Android项目的Androidmanifest.xml中的application节点下添加如下内容

<meta-data android:name="DCLOUD_STREAMAPP_CHANNEL"  android:value="{applicationId}|{appid}|{adid}|{channel}"/>

android:value值由四个字段组成,使用‘|’符号分割,各字段说明:

  • applicationId 包名,对应Android项目中build.gradle中的applicationId
  • appid 应用标识,对应5+或uni-app项目manifest.json中appid
  • adid DCloud的广告标识,开通广告后可在dev.dcloud.net.cn获取,如果没有开通广告,设置值为即可
  • channel 渠道标识,注意:提交谷歌应用市场(Google Play)时一定要将渠道标识设置为google
    例如:
    <meta-data  
            android:name="DCLOUD_STREAMAPP_CHANNEL"  
            android:value="io.dcloud.HBuilder|HBuilder|0123456789|google" />

Android平台本地离线打包渠道相关配置
iOS平台本地离线打包渠道相关配置

手机端获取渠道信息的js api

推广渠道标识

plus.runtime.channel 

注意:HBuilder 2.0版本此API有bug,请升级到更新版

这个API主要用于自定义统计,如果是使用DCloud的统计,无需专门写API。具体见下。

在DCloud统计后台查看渠道数据

开发者在使用 HBuilder 新建并开发应用后,可以登录DCloud开发者中心查看应用的统计数据。

首页会展示所有已创建的应用列表,点击应用名称可以查看该应用的『日活趋势』。

包含渠道信息的应用,左上角选择渠道,即可查看对应渠道的运营统计数据。

Tips:

  • 当日的数据,次日才会出统计结果。
  • 有用户使用且统计到有效数据,才可以按相应的渠道区分。
  • 目前需要一个渠道一个渠道打包,云打包暂时无法批量打多个渠道包出来。
  • 本文的渠道标记处理的是DCloud统计后台,如使用友盟统计,需要在友盟的sdk配置里单独配
3 关注 分享
mrerror@qq.com 露珠 328148302@qq.com

要回复文章请先登录注册

7040494@qq.com

7040494@qq.com

友盟统计的渠道打包有没有快速的方法,现在是每一个应用市场都要云打包一次
2019-08-02 16:43
StarSky

StarSky

我还以为渠道包能上架APP呢。。。。。
2019-07-23 08:49
479686314@qq.com

479686314@qq.com

回复 DCloud_heavensoft:
ok,明白了。 之前没有渠道号,所以一直想用umeng的渠道号做标示,现在这个可以了
2019-06-25 22:07
DCloud_heavensoft

DCloud_heavensoft

回复 479686314@qq.com:
友盟统计和这个不沾边,友盟你试试用Native.js是否能拿到
2019-06-25 19:26
479686314@qq.com

479686314@qq.com

回复 DCloud_heavensoft:
我感觉可能是我理解错了,这里用plus.runtime.channel拿到的不是配置在友盟统计里的channelid吗?我想获取的是友盟统计里设置的友盟渠道id
2019-06-25 00:45
479686314@qq.com

479686314@qq.com

回复 479686314@qq.com:
我用是0614版,在安卓手机上测试,不知道是不是我用法有误,window版也不行。代码:
```
console.log('channel' ,plus.runtime.channel);
```
日志:
00:29:49.758 App Launch at App.vue:16
00:29:49.779 channel, at App.vue:99
00:29:49.799 App Show at App.vue:44
2019-06-25 00:30
479686314@qq.com

479686314@qq.com

回复 DCloud_heavensoft:
mac版的还不行,调试可以拿到channel 值dcoud。。。 但是云打包自己设置的channel就是空的。我晚点看看win版的
2019-06-24 23:05
DCloud_heavensoft

DCloud_heavensoft

回复 479686314@qq.com:
2.0.1.20190614,这个版本已经修复了这个bug
2019-06-24 22:27
479686314@qq.com

479686314@qq.com

回复 DCloud_heavensoft:
有木有临时方案?要发包了,服务端获取不到channel值
2019-06-24 20:19
307598421@qq.com

307598421@qq.com

plus.sqlite.executeSql 无法执行多个insert语句,只会执行第一条
2019-06-13 09:36
DCloud_heavensoft

DCloud_heavensoft

回复 追梦随想:
抱歉是bug,请新版会修复
2019-06-12 21:30
DCloud_App_Array

DCloud_App_Array

回复 追梦随想:
对,我们会尽快支持
2019-06-12 21:03
追梦随想

追梦随想

回复 DCloud_App_Array:
既然官方平台能统计到,那说明是可以获取到的啊,求开放出来
2019-06-12 19:52
追梦随想

追梦随想

回复 DCloud_HB_WDL:
plus.runtime.channel 为什么获取不到对应的渠道呢,选择了指定渠道打包,不应该返回对应的渠道信息吗,我们还想在后端记录呢,结果一片空白啊。。。还不如我手工设置个变量再打包呢,心塞。。。
2019-06-12 18:48
1540187545@qq.com

1540187545@qq.com

channel_list是和app-plus同级还是它的子集,如果发布oppo,那id填‘oppo’,name填‘oppo应用商店‘是么
2019-06-12 11:00
DCloud_HB_WDL

DCloud_HB_WDL (作者)

回复 18672760500@163.com:
哪里不够详细了
2019-06-11 17:51
DCloud_HB_WDL

DCloud_HB_WDL (作者)

回复 18672760500@163.com:
需要填写
2019-06-11 17:51
露珠

露珠

支持这个功能
2019-06-11 17:21
18672760500@163.com

18672760500@163.com

增加的channel_list 字段里面的id,name需要填写吗
2019-06-11 16:48
18672760500@163.com

18672760500@163.com

可以出个详细一些的吗
2019-06-11 16:44
56889921@qq.com

56889921@qq.com

绝对要顶这个功能!!
2019-06-11 13:48
追梦随想

追梦随想

不过可惜的是还是需要一个渠道一个包,什么时候能一个包应用所有渠道就好了,每次更新都要打包十来个真的是想死的感觉
2019-06-11 13:10
追梦随想

追梦随想

鼓掌鼓掌,昨晚我还是手工写的渠道,然后一口气打包了十个渠道的apk,然后上架到各个平台,累死宝宝了,本来还想来吐槽下呢,没想到今天就出了这个功能,哈哈哈哈
2019-06-11 11:11
710529585@qq.com

710529585@qq.com

如果能支持打包的软件,一键发布就更完美了,可以收费
2019-06-11 10:33
薄荷味的雪

薄荷味的雪

这个离线打包配置的多渠道和我在build.gradle中配置的productFlavors多渠道有啥不一样吗
2019-06-11 10:27
诸葛逍遥

诸葛逍遥

厉害
2019-06-11 09:23
萌龙

萌龙

6666
2019-06-11 09:02
411982247@qq.com

411982247@qq.com

大赞
2019-06-11 08:45
独木为夕

独木为夕

可以
2019-06-11 08:16
leeseett@qq.com

leeseett@qq.com

占位
2019-05-31 16:05