Commit 7ba8d7696613ca98e991aae42498d4ca73f45f4b

Authored by 小川 费
1 parent 8ca54279
Exists in master

1

@@ -69,12 +69,12 @@ @@ -69,12 +69,12 @@
69 69
70 ```javaScript 70 ```javaScript
71 export default { 71 export default {
72 - IsDebug: false, // 是否debug模式,debug模式会打印log,也可以通过stat模块setDebug进行修改  
73 - Env: 100, // 100表示正式环境,110表示测试环境,测试开发阶段使用110,提审前切记改成100!!! 72 + IsDebug: false, // 是否debug模式,debug模式会打印log,可使用stat模块setDebug api进行修改
  73 + Env: 100, // 100表示正式环境,110表示测试环境,推荐测试联调阶段使用110,提审前切记改成100!!!
74 AdCacheDuration: 30, // 广告列表缓存持续时间间隔 74 AdCacheDuration: 30, // 广告列表缓存持续时间间隔
75 IsUseShareModule: true, // 是否使用分享模块 75 IsUseShareModule: true, // 是否使用分享模块
76 IsOnlineAutoUse: true, // 是否开启sdk自动请求online模块(在线参数配置)的updateOnlineConfig,拉取在线参数配置 76 IsOnlineAutoUse: true, // 是否开启sdk自动请求online模块(在线参数配置)的updateOnlineConfig,拉取在线参数配置
77 - IsOnlineDebug: true, // 是否开启online模块(在线参数配置)debug模式 77 + IsOnlineDebug: true, // 是否开启online模块(配置参数模块)debug模式
78 ShareRightKey: 'forward', // 右上角分享的shareKey,shareKey请阅读share模块说明,默认为forward,为空字符串则不使用右上角分享 78 ShareRightKey: 'forward', // 右上角分享的shareKey,shareKey请阅读share模块说明,默认为forward,为空字符串则不使用右上角分享
79 79
80 ShareData: { // 必填,默认分享数据(拉取不到分享配置后使用,默认分享,SDK自动分配share_id为99999) 80 ShareData: { // 必填,默认分享数据(拉取不到分享配置后使用,默认分享,SDK自动分配share_id为99999)
@@ -95,117 +95,131 @@ @@ -95,117 +95,131 @@
95 }; 95 };
96 ``` 96 ```
97 97
98 -参数详解:  
99 - 98 +
  99 + 参数详解:
  100 +
100 <div id="config_env"></div> 101 <div id="config_env"></div>
  102 +1. **Env ( number ):**SDK执行环境,建议开发者测试联调阶段设为110。
101 103
102 -1. **Env ( number ):**SDK统计执行环境,建议开发者调试测试阶段设置为110,提审阶段一定要设置为100。 104 + > 提审阶段一定要设为100
  105 +
  106 + > 测试环境各种配置管理、数据分析查看,请[前往测试服后台](http://pre-data.d3games.com/#/login)
  107 +
  108 + > 正式环境各种配置管理、数据分析查看,请[前往正式服后台](https://data.d3games.com/#/login)
103 109
104 - 100:正式环境,请求api域名地址为:https://dataapi.d3games.com 110 + 100:正式环境,请求api域名地址为:https://dataapi.d3games.com
105 111
106 - 110:测试环境,请求api域名地址为:https://pre-dataapi.d3games.com 112 + 110:测试环境,请求api域名地址为:https://pre-dataapi.d3games.com
107 113
108 2. **IsDebug ( boolean ):**是否debug模式,debug模式会打印sdk中的console.log/error/warn log。 114 2. **IsDebug ( boolean ):**是否debug模式,debug模式会打印sdk中的console.log/error/warn log。
109 - 115 +
110 false:关闭log打印,提审前建议设置为false,不打印log信息 116 false:关闭log打印,提审前建议设置为false,不打印log信息
111 -  
112 - true:开启log打印,如遇到联调问题,可设置为true,查看log发给相关人员进行查看解决问题  
113 -  
114 - 此设置可在代码中通过动态设置:PCSDK.stat.setDebug( boolean )进行动态切换控制  
115 -  
116 -3. **AdCacheDuration(number):**表示获取广告位列表的缓存时间,例如30秒,sdk会对广告列表拉取后缓存30秒。此参数对接入噗嗤广告导出功能后有效,没有接入可不修改,使用默认值。  
117 -  
118 -4. **IsUseShareModule( boolean ):**是否启用sdk分享视频功能(sdk把分享和视频封装为share模块,可以通过噗嗤后台配置分享还是视频类型进行分发控制)  
119 -  
120 - false:SDK启动不拉取分享列表,也就是不适用噗嗤游戏的分享模块功能  
121 -  
122 - true:SDK启动拉取噗嗤管理后台配置的分享视频列表,运营或者开发者在噗嗤后台配置分享视频的配置后,开发者可以通过PCSDK.share.shareDispatch( sharekey , ...)进行视频分享分发操作,具体操作请详看SDK分享视频模块。  
123 -  
124 -5. **IsOnlineAutoUse( boolean ):**是否启用SDK启动获取噗嗤游戏后台配置的在线配置参数列表  
125 -  
126 - false:两种处理 1)不启用噗嗤后台在线配置参数功能; 2)使用在线配置参数功能,但是启动不拉取后台在线配置参数列表,代码中调用api拉取在线参数  
127 -  
128 - 示例:代码中控制拉取在线参数,例如噗嗤后台【游戏数据】=>【配置参数】栏配置了:是否显示微信插屏广告、噗嗤游戏广告导出动态开关  
129 -  
130 - ```javascript  
131 - PCSDK.online.updateOnlineConfig().then(() => {  
132 - // 获取是否后台动态配置开启插屏广告,1为开启,0为关闭  
133 - let isInterstitialAd = PCSDK.online.getParamsInt('interstitial_ad_open', 0) === 1;  
134 - // isInterstitialAd && '显示插屏广告';  
135 - // 获取动态多个广告位开启的配置  
136 - let pcGameOpenMap = PCSDK.online.getParamsObj('pc_games_open', { "Drawer": 0, "GuessLike": 0, "Cross": 0 });  
137 - // pcGameOpenMap.Drawer === 1 && '显示抽屉推广位';  
138 - // pcGameOpenMap.GuessLike === 1 && '显示猜你喜欢推广位';  
139 - // pcGameOpenMap.Cross === 1 && '显示交叉推广位';  
140 - });  
141 - ```  
142 -  
143 - true:sdk启动会自动拉取噗嗤后台在线配置参数列表,开发者可通过PCSDK.online.getParamsObj、PCSDK.online.getParamsInt、PCSDK.online.getParamsString、PCSDK.online.getParams api传递后台配置在线参数key获取动态数据配置。  
144 -  
145 - 示例:配置自动拉取后,项目中可直接使用  
146 -  
147 - ```javaScript  
148 - let isInterstitialAd = PCSDK.online.getParamsInt('interstitial_ad_open', 0) === 1;  
149 - let pcGameOpenMap = PCSDK.online.getParamsObj('pc_games_open', { "Drawer": 0, "GuessLike": 0, "Cross": 0 });  
150 - ```  
151 - 6. **IsOnlineDebug( boolean ):**是否启用online模块(在线参数配置)debug模式,建议设置为true。  
152 -  
153 - false:不启动debug模式,代码控制或者sdk自动调用updateOnlineConfig api都会有十分钟的缓存,参照了友盟在线参数功能的设计  
154 -  
155 - true: 开启debug模式,只要是请求updateOnlineConfig api都会实时请求获取最新在线参数配置  
156 -  
157 - 7. **ShareRightKey( string ):**右上角分享的shareKey,shareKey请阅读share模块说明,默认为forward,为空字符串则不使用右上角分享,此配置在参数【IsUseShareModule】设置为true的情况下生效。  
158 - 117 +
  118 + true:开启log打印,如遇到联调问题,可设置为true,发体验版本或者查看log发给相关人员进行查看解决问题
  119 +
  120 + 也可在代码中动态设置:PCSDK.stat.setDebug( boolean )
  121 +
  122 +3. **AdCacheDuration(number):**表示获取广告位列表的缓存时间,例如:配置30,SDK中拉取交叉推广位列表后缓存30秒。此参数对接入交叉推广位模块后有效,没有接入可不修改,使用默认值。
  123 +
  124 +4. **IsUseShareModule( boolean ):**是否启用sdk分享/视频功能(sdk把分享和视频封装为share模块,登录后台->【游戏数据】->【配置相关】->【分享/视频配置】后可对分享视频进行动态配置)
  125 +
  126 + false:SDK启动时不拉取分享/视频列表,不接入分享/视频模块功能
  127 +
  128 + true:SDK启动时拉取后台配置的分享/视频列表,运营或者开发者登录后台后,配置分享/视频,开发者请详看分享视频模块接入。
  129 +
  130 +5. **IsOnlineAutoUse( boolean ):**是否启用在线配置参数模块功能
  131 +
  132 + false:两种处理 1)不启用在线配置参数模块功能; 2)启用在线配置参数功能,但是SDK启动时不自动调用updateOnlineConfig拉取后台配置参数列表,开发者在代码主动调用拉取在线配置参数:PCSDK.online.updateOnlineConfig();
  133 +
  134 + 示例:开发者代码中主动拉取在线配置参数。
  135 +
  136 + ```javascript
  137 + // 后台 ->【游戏数据】->【配置参数】栏配置了:是否显示微信插屏广告、交叉推广位是否展示动态开关
  138 + PCSDK.online.updateOnlineConfig().then(() => {
  139 + // 获取是否后台动态配置开启插屏广告,1为开启,0为关闭
  140 + let isInterstitialAd = PCSDK.online.getParamsInt('interstitial_ad_open', 0) === 1;
  141 + // isInterstitialAd && '显示插屏广告';
  142 + // 获取动态多个广告位开启的配置
  143 + let pcGameOpenMap = PCSDK.online.getParamsObj('pc_games_open', { "Drawer": 0, "GuessLike": 0, "Cross": 0 });
  144 + // pcGameOpenMap.Drawer === 1 && '显示抽屉推广位';
  145 + // pcGameOpenMap.GuessLike === 1 && '显示猜你喜欢推广位';
  146 + // pcGameOpenMap.Cross === 1 && '显示交叉推广位';
  147 + });
  148 + ```
  149 + true:sdk启动时自动调用updateOnlineConfig拉取后台在线配置参数列表,开发者可通过
  150 +
  151 + PCSDK.online.getParamsObj、PCSDK.online.getParamsInt、PCSDK.online.getParamsString、PCSDK.online.getParams api传递后台配置参数key获取在线配置参数。
  152 +
  153 + 示例:IsOnlineAutoUse: true,开发者可使用下面api获取在线配置参数配置的值
  154 +
  155 + ```javaScript
  156 + let isInterstitialAd = PCSDK.online.getParamsInt('interstitial_ad_open', 0) === 1;
  157 + let pcGameOpenMap = PCSDK.online.getParamsObj('pc_games_open', { "Drawer": 0, "GuessLike": 0, "Cross": 0 });
  158 + ```
  159 +
  160 +6. **IsOnlineDebug( boolean ):**是否启用online模块(在线配置参数)debug模式,建议设置为true。
  161 +
  162 + false:不启动debug模式,开发者主动调用updateOnlineConfig或者SDK启动时调用updateOnlineConfig都会把在线配置参数列表设置10分钟缓存,不用每次都去服务器请求,参照了友盟在线参数功能的设计
  163 +
  164 + true: 开启debug模式,只要是请求updateOnlineConfig api都会立即发起请求,而不是去检测读取缓存
  165 +
  166 +7. **ShareRightKey( string ):**右上角分享的shareKey,shareKey请阅读分享视频模块,默认为forward,为空字符串则不使用右上角分享,此配置在配置【IsUseShareModule: true】情况下生效。
  167 +
159 示例: 168 示例:
160 -  
161 - 在噗嗤管理后台的分享视频栏目配置了一条分享key为:forward的分享配置  
162 - 169 +
  170 + 在后台的【分享/视频配置】栏目配置了一条分享key为:forward的分享配置
  171 +
163 ![sdk文件目录结构](https://dep.miso-lab.com/sdkword/sdk_004.png) 172 ![sdk文件目录结构](https://dep.miso-lab.com/sdkword/sdk_004.png)
164 -  
165 - 8. **ShareData( object ):**此配置在【IsUseShareModule】设置为true起效,IsUseShareModule设置true sdk启动拉取分享列表,如果分享列表拉取失败,或调用的shareKey不在分享列表中(噗嗤后台【游戏数据】=>【分享/视频配置】栏没有配置此分享key)就会使用此条设置的数据,>>> 请务必配置一条 <<<。  
166 -  
167 - 示例:可以从噗嗤管理后台【游戏数据】=>【分享/视频配置】中选取一条:复制文案,点击分享素材icon->查看大图->右键查看分享图片的html源码复制src图片地址:**{**  
168 -  
169 - ​ **share_desc: ' 半夜传来啪啪啪!竟是隔壁老王偷偷打气球',**  
170 -  
171 - ​ **share_wxad_id: 'adunit-6958dcfc3f0bed31',**  
172 -  
173 - ​ **share_icon: 'https://dep.miso-lab.com/data_analysis/games/res/5D57D4A3Yx.png'**  
174 -  
175 - **}**。  
176 -  
177 - 操作示图:  
178 -  
179 - ![sdk文件目录结构](https://dep.miso-lab.com/sdkword/sdk_005.png)  
180 -  
181 - 9. **GameId:必填,游戏id,请联系运营人员提供**  
182 -  
183 - 10. **ChannelId:必填,游戏渠道id,请联系运营人员提供**  
184 -  
185 - 11. **Secret:必填,游戏 Secret Key,请联系运营人员提供**  
186 -  
187 - 12. **MidasPay( object ):**米大水虚拟支付配置,没有接入微信的米大师支付,请注意下面规则  
188 -  
189 - OfferId:在米大师申请的应用id,没有接入米大师,默认为"0"  
190 -  
191 - ZoneId:分区ID,默认:"1"  
192 -  
193 - Mode:支付的类型,不同的支付类型有各自额外要传的附加参数,默认:"game"  
194 -  
195 - CurrencyType:币种,默认:"CNY"  
196 -  
197 - Platform:申请接入时的平台,platform与应用id有关。  
198 -  
199 - 1)接入了米大师,填写"android"(ios暂时没有开放)  
200 -  
201 - 2)未接入米大师,使用其他支付,如果只支持android,则填写"android";  
202 -  
203 - 3)未接入米大师,使用其他支付,如果只支持ios,则填写"ios";  
204 -  
205 - 4)未接入米大师,使用其他支付,如果支持ios和android,则填写为"",sdk会根据手机识别android还是ios  
206 - 173 +
  174 +8. **ShareData( object ):**此配置在【IsUseShareModule: true】起效,开发者如果接入了分享视频模块,>>> 请务必配置一条 <<<。
  175 +
  176 + > IsUseShareModule设置true sdk启动拉取分享视频配置列表,如果分享视频列表拉取请求失败,或此shareKey不在分享视频配置列表中(登录后台 ->【游戏数据】->【分享/视频配置】栏没有配置分享key)就会使用此条设置的数据。
  177 +
  178 + 示例:可从后台【游戏数据】->【分享/视频配置】中选取一条:复制文案,点击分享素材icon -> 查看大图 -> 右键查看分享图片的html源码复制src图片地址:
  179 +
  180 + ```json
  181 + {
  182 + // 分享文案内容
  183 + share_desc: ' 半夜传来啪啪啪!竟是隔壁老王偷偷打气球',
  184 + // 可选,视频广告uid,配置此参数,拉取不到对应的shareKey,推送看视频,不配置或者配置的uid无效则推送分享
  185 + share_wxad_id: 'adunit-6958dcfc3f0bed31',
  186 + // 分享图
  187 + share_icon: 'https://dep.miso-lab.com/data_analysis/games/res/5D57D4A3Yx.png'
  188 + }
  189 + ```
  190 +
  191 + 操作步骤:
  192 +
  193 + ![sdk文件目录结构](https://dep.miso-lab.com/sdkword/sdk_005.png)
  194 +
  195 +9. **GameId:必填,游戏id,请联系运营人员提供**
  196 +
  197 +10. **ChannelId:必填,游戏渠道id,请联系运营人员提供**
  198 +
  199 +11. **Secret:必填,游戏 Secret Key,请联系运营人员提供**
  200 +
  201 +12. **MidasPay( object ):**米大水虚拟支付配置,没有接入微信的米大师支付,请注意下面规则
  202 +
  203 + OfferId:在米大师申请的应用id,没有接入米大师,默认为"0"
  204 +
  205 + ZoneId:分区ID,默认:"1"
  206 +
  207 + Mode:支付的类型,不同的支付类型有各自额外要传的附加参数,默认:"game"
  208 +
  209 + CurrencyType:币种,默认:"CNY"
  210 +
  211 + Platform:申请接入时的平台,platform与应用id有关。
  212 +
  213 + 1)接入了米大师,填写"android"(ios暂时没有开放)
  214 +
  215 + 2)未接入米大师,使用其他支付,如果只支持android,则填写"android";
  216 +
  217 + 3)未接入米大师,使用其他支付,如果只支持ios,则填写"ios";
  218 +
  219 + 4)未接入米大师,使用其他支付,如果支持ios和android,则填写为"",sdk会根据手机识别android还是ios
  220 +
207 221
208 - 222 +
209 * #### 如果项目使用Typescript语言开发,请引入解压文件夹下的sdk.d.ts文件到项目中。 223 * #### 如果项目使用Typescript语言开发,请引入解压文件夹下的sdk.d.ts文件到项目中。
210 224
211 示例:项目采用的是Laya Typescript版本进行开发,将该文件复制到libs目录下面 225 示例:项目采用的是Laya Typescript版本进行开发,将该文件复制到libs目录下面
1 # 噗嗤SDK 1 # 噗嗤SDK
2 PCSDK(噗嗤SDK)是一款封装了微信小游戏、QQ小游戏平台常用api接口和用户行为数据上报的一款产品。 2 PCSDK(噗嗤SDK)是一款封装了微信小游戏、QQ小游戏平台常用api接口和用户行为数据上报的一款产品。
3 -PCSDK上报小游戏用户所触发的各种行为数据到噗嗤管理后台,后台对数据进行统计分析后多样化的展示数据统计 3 +PCSDK上报小游戏用户所触发的各种行为数据到噗嗤管理后台,后台对数据统计分析后以多样化的方式展现数据
4 4
5 **PCSDK提供的模块功能:** 5 **PCSDK提供的模块功能:**
6 6
@@ -13,24 +13,29 @@ PCSDK上报小游戏用户所触发的各种行为数据到噗嗤管理后台, @@ -13,24 +13,29 @@ PCSDK上报小游戏用户所触发的各种行为数据到噗嗤管理后台,
13 13
14 14
15 # 噗嗤管理后台 15 # 噗嗤管理后台
16 -噗嗤管理后台统计sdk中上报的各项数据进行分析;管理各种sdk中所需要的配置信息:分享/视频配置、配置参数(在线参数配置)、噗嗤游戏导出广告配置、用户事件行为配置。 16 +噗嗤管理后台对sdk中上报的各项数据进行分析;管理sdk中所需要的配置信息:分享/视频配置、配置参数(在线参数配置)、交叉推广位配置、用户自定义事件配置。
17 17
18 -为了开发联调测试阶段不影响游戏已上线运营相关数据或者配置信息,特意对管理后台做了测试和线上服划分,噗嗤管理后台分为:测试服后台,正式服后台: 18 +方便开发者联调测试阶段不影响上线游戏运营相关数据或者配置信息,config.js的Env配置提供测试和正式环境切换。
19 19
20 -噗嗤管理后台后台地址: 20 +> 测试环境各种配置管理、数据分析查看,请[前往测试服后台](http://pre-data.d3games.com/#/login)
21 21
22 -- 正式服后台,地址:https://data.d3games.com/#/login 22 +> 正式环境各种配置管理、数据分析查看,请[前往正式服后台](https://data.d3games.com/#/login)
  23 +
  24 +噗嗤管理后台地址:
23 25
24 - 测试服后台,地址:http://pre-data.d3games.com/#/login 26 - 测试服后台,地址:http://pre-data.d3games.com/#/login
25 27
  28 +- 正式服后台,地址:https://data.d3games.com/#/login
  29 +
26 **友情提示:** 30 **友情提示:**
27 31
28 -- **之后文案中后台指的是噗嗤管理后台,而不是微信小程序/小游戏后台。**  
29 -- **后台登录账号获取,需提供手机信息给我方运营,运营创建后台登录账号、密码后反馈;登录后台即可使用后台提供的各项服务** 32 +- **之后文档中'后台'指的是[噗嗤管理后台],而不是微信小程序/小游戏后台。**
  33 +- **后台登录账号获取:需提供手机信息给我方运营,运营创建后台登录账号、密码后提供反馈。**
  34 +- **登录后台即可使用后台提供的各项服务**
30 35
31 36
32 37
33 -**噗嗤后台概览:** 38 +**后台概览:**
34 ## ![sdk文件目录结构](https://dep.miso-lab.com/sdkword/sdk_006.png) 39 ## ![sdk文件目录结构](https://dep.miso-lab.com/sdkword/sdk_006.png)
35 40
36 41
stat_active.md
@@ -25,9 +25,9 @@ @@ -25,9 +25,9 @@
25 25
26 | **名称** | **功能说明** | 26 | **名称** | **功能说明** |
27 | ------------------------ | ------------------------------------------------------------ | 27 | ------------------------ | ------------------------------------------------------------ |
28 -| PCSDK.stat.loadingFinish | 加载游戏资源完成时打点,不是微信代码包白屏加载完成,游戏loading自身cdn资源加载完成调用 |  
29 -| PCSDK.stat.setLogind | 设置sdk必须要使用的用户id、第一次创建角色的注册时间,游戏接入方登录游戏服务器后调用 |  
30 -| PCSDK.stat.active | 用户活跃/新增注册上报,切记在setLogind设置需要的信息过后使用(不限于使用位置),不然会导致新增注册数据统计异常 | 28 +| PCSDK.stat.loadingFinish | 加载游戏资源完成时打点,不是微信代码包白屏加载完成,游戏加载完成游戏ui界面图、json资源 |
  29 +| PCSDK.stat.setLogind | 设置SDK必须要使用的用户id、第一次创建角色的注册时间,游戏接入方登录游戏服务器后调用 |
  30 +| PCSDK.stat.active | 用户活跃/新增注册上报,切记在setLogind设置需要的信息过后使用(设置setLogind后此api不限于使用位置),不然会导致新增注册数据统计异常 |
31 31
32 32
33 33
@@ -41,7 +41,7 @@ @@ -41,7 +41,7 @@
41 PCSDK.stat.loadingFinish(): void 41 PCSDK.stat.loadingFinish(): void
42 ``` 42 ```
43 43
44 - 定义:加载游戏加载资源完成时打点 44 + 定义:加载游戏资源(UI界面图,json资源等)完成时打点
45 45
46 参数: 46 参数:
47 47
@@ -49,7 +49,7 @@ @@ -49,7 +49,7 @@
49 49
50 ``` 50 ```
51 51
52 - 示例:加载完成游戏主界面图片、json资源打点 52 + 示例:
53 53
54 ```javascript 54 ```javascript
55 private async initEnv() { 55 private async initEnv() {
@@ -82,7 +82,7 @@ @@ -82,7 +82,7 @@
82 PCSDK.stat.setLogind( data: object ): void 82 PCSDK.stat.setLogind( data: object ): void
83 ``` 83 ```
84 84
85 - 定义:游戏登录完成,得到登录用户的用户id和用户第一次注册时间,设置SDK必需的用户信息 85 + 定义:游戏成功登录到服务器后得到用户信息(用户id和用户第一次注册时间),设置SDK必需的用户信息
86 86
87 参数: 87 参数:
88 88
@@ -97,7 +97,7 @@ @@ -97,7 +97,7 @@
97 示例:游戏登录完成后,获取用户信息后进行打点(该示例,只是模拟使用环境) 97 示例:游戏登录完成后,获取用户信息后进行打点(该示例,只是模拟使用环境)
98 98
99 ```javascript 99 ```javascript
100 - // 发起登录请求,得到登录数据信息,调用setLogind设置SDK用户信息 100 + // 发起登录请求成功后,得到用户信息,调用setLogind设置SDK必需的用户信息
101 Api.login().then( data => { 101 Api.login().then( data => {
102 let { user_id, user_reg_time } = data; 102 let { user_id, user_reg_time } = data;
103 PCSDK.stat.setLogind({ 103 PCSDK.stat.setLogind({
@@ -113,7 +113,7 @@ @@ -113,7 +113,7 @@
113 PCSDK.stat.active(): void 113 PCSDK.stat.active(): void
114 ``` 114 ```
115 115
116 - 定义:用户活跃/新增注册上报,切记在使用setLogind设置用户信息后调用此接口,不然会导致新增注册数据统计异常 116 + 定义:用户活跃/新增注册上报,切记在使用setLogind设置用户信息后调用此接口,不然会导致新增注册数据统计异常
117 117
118 参数: 118 参数:
119 119
@@ -121,10 +121,10 @@ @@ -121,10 +121,10 @@
121 121
122 ``` 122 ```
123 123
124 - 示例:游戏登录完成后,获取用户信息后进行打点(该示例,只是模拟该接口使用环境) 124 + 示例:
125 125
126 ```javascript 126 ```javascript
127 - // 使用场景1:发起登录请求,得到用户数据信息,调用setLogind设置SDK用户信息后立即调用active 127 + // 使用场景1:发起登录请求,得到用户信息,调用setLogind设置SDK用户信息后立即调用active
128 Api.login().then( data => { 128 Api.login().then( data => {
129 let { user_id, user_reg_time } = data; 129 let { user_id, user_reg_time } = data;
130 // 设置用户信息 130 // 设置用户信息
@@ -4,9 +4,9 @@ @@ -4,9 +4,9 @@
4 4
5 #### **简介** 5 #### **简介**
6 6
7 -交叉推广位是在游戏中展示其他游戏icon,用户点击跳转到导出的游戏,达到共享用户的目的。 7 +交叉推广位是在游戏中展示其他游戏,用户点击某个游戏跳转进入游戏,达到共享用户的目的。
8 8
9 -噗嗤游戏提供了3种类型的广告导出,后台可对交叉推广位进行配置管理,对广告导出各项指标分析阅览。 9 +噗嗤游戏提供了3种类型的交叉推广位,后台可对交叉推广位进行配置管理,对交叉推广位各项指标分析阅览。
10 10
11 **3种广告类型:交叉悬浮广告框、交叉抽屉式广告位、交叉猜你喜欢广告位** 11 **3种广告类型:交叉悬浮广告框、交叉抽屉式广告位、交叉猜你喜欢广告位**
12 12
@@ -38,7 +38,7 @@ @@ -38,7 +38,7 @@
38 38
39 - 由于微信对每个游戏可跳转其他游戏有10个限制,可跳转的其它游戏需要在小游戏根目录下的全局配置文件game.json中进行添加配置:navigateToMiniProgramAppIdList,该参数定义请详读[小程序全局配置](https://developers.weixin.qq.com/minigame/dev/reference/configuration/app.html)。 39 - 由于微信对每个游戏可跳转其他游戏有10个限制,可跳转的其它游戏需要在小游戏根目录下的全局配置文件game.json中进行添加配置:navigateToMiniProgramAppIdList,该参数定义请详读[小程序全局配置](https://developers.weixin.qq.com/minigame/dev/reference/configuration/app.html)。
40 40
41 -- 噗嗤游戏为了方便开发者接入调试交叉推广位,【后台测试服】已经配置了不同类型导出广告,并提供以下10个测试服广告位appid: 41 +- 噗嗤游戏为了方便开发者接入调试交叉推广位,【后台测试服】已经配置测试使用的不同类型推广位,并提供以下10个测试服广告位appid:
42 42
43 水果爆破 :"wx26822126b4d99eda", 43 水果爆破 :"wx26822126b4d99eda",
44 44
@@ -77,13 +77,13 @@ @@ -77,13 +77,13 @@
77 77
78 78
79 79
80 -- 完成下面的操作步骤可调用相应的api读取到广告位数据 80 +- 完成下面的操作步骤,即可拉取交叉推广位
81 81
82 1、开发者复制上面的10个其他游戏的appid,配置到game.json的navigateToMiniProgramAppIdList参数: 82 1、开发者复制上面的10个其他游戏的appid,配置到game.json的navigateToMiniProgramAppIdList参数:
83 83
84 ![sdk文件目录结构](https://dep.miso-lab.com/sdkword/sdk_010.png) 84 ![sdk文件目录结构](https://dep.miso-lab.com/sdkword/sdk_010.png)
85 85
86 - 2、修改[config.js的Env配置](install.md#config_env)为110,对接联调阶段,请走测试服后台,调试环境走测试环境 86 + 2、修改[config.js的Env配置](install.md#config_env)为110,开发者测试联调阶段,走测试环境
87 87
88 > 提示:广告位接入完毕测试通过,提交审核前,修改Env为100。 88 > 提示:广告位接入完毕测试通过,提交审核前,修改Env为100。
89 89
@@ -95,8 +95,8 @@ @@ -95,8 +95,8 @@
95 95
96 | **名称** | **功能说明** | 96 | **名称** | **功能说明** |
97 | --------------------------- | ------------------------------------------------------------ | 97 | --------------------------- | ------------------------------------------------------------ |
98 -| PCSDK.stat.bannerList | 根据类型获取对应类型噗嗤交叉广告列表,目前sdk支持3种类型:40(交叉悬浮广告框)、70(交叉抽屉式广告位)、50(交叉猜你喜欢广告位) |  
99 -| PCSDK.stat.bannerNavigateTo | 交叉推广位点击跳转到对应appid的其他游戏,该接口封装了小游戏的跳转功能(navigateToMiniProgram) | 98 +| PCSDK.stat.bannerList | 根据类型获取对应类型交叉广告列表,目前SDK支持3种类型:40(交叉悬浮广告框)、70(交叉抽屉式广告位)、50(交叉猜你喜欢广告位) |
  99 +| PCSDK.stat.bannerNavigateTo | 交叉推广位点击跳转到对应appid的游戏,该接口封装了小游戏的跳转功能(navigateToMiniProgram) |
100 | PCSDK.stat.addExposure | 交叉推广位一条或者多条广告展示,添加曝光数据,SDK在onHide时候上报数据到后台 | 100 | PCSDK.stat.addExposure | 交叉推广位一条或者多条广告展示,添加曝光数据,SDK在onHide时候上报数据到后台 |
101 101
102 102
@@ -111,7 +111,7 @@ @@ -111,7 +111,7 @@
111 PCSDK.stat.loadingFinish(banner_type): Promise<any> 111 PCSDK.stat.loadingFinish(banner_type): Promise<any>
112 ``` 112 ```
113 113
114 - 定义:根据类型获取对应类型噗嗤交叉广告列表,目前sdk支持3种类型;返回Promise类型 114 + 定义:根据类型获取对应类型交叉广告列表,目前SDK支持3种类型
115 115
116 参数: 116 参数:
117 117
@@ -272,7 +272,7 @@ @@ -272,7 +272,7 @@
272 PCSDK.stat.bannerNavigateTo( location:number, banner_data: any, opts?: { extraData?: string; envVersion?: string }): Promise<any> 272 PCSDK.stat.bannerNavigateTo( location:number, banner_data: any, opts?: { extraData?: string; envVersion?: string }): Promise<any>
273 ``` 273 ```
274 274
275 - 定义:交叉推广位点击游戏跳转到对应appid的其他游戏,该接口封装了小游戏的跳转功能(navigateToMiniProgram), 第三个参数配置可参考[wx.navigateToMiniProgram extraData、envVersion配置信息](https://developers.weixin.qq.com/minigame/dev/api/open-api/miniprogram-navigate/wx.navigateToMiniProgram.html) 275 + 定义:交叉推广位点击游戏跳转到对应appid的游戏,该接口封装了小游戏的跳转功能(navigateToMiniProgram), 第三个参数配置可参考[wx.navigateToMiniProgram extraData、envVersion配置信息](https://developers.weixin.qq.com/minigame/dev/api/open-api/miniprogram-navigate/wx.navigateToMiniProgram.html)
276 276
277 参数: 277 参数:
278 278
@@ -288,7 +288,7 @@ @@ -288,7 +288,7 @@
288 } 288 }
289 ``` 289 ```
290 290
291 - 示例:获取猜你喜欢广告位,以列表的形式显示在界面上,点击任意一项游戏跳转其他游戏 291 + 示例:获取猜你喜欢推广位,以列表的形式显示在界面上,点击任意一项游戏跳转其他游戏
292 292
293 ```javascript 293 ```javascript
294 // 发起登录请求,得到登录数据信息,调用setLogind设置SDK用户信息 294 // 发起登录请求,得到登录数据信息,调用setLogind设置SDK用户信息
@@ -411,27 +411,26 @@ @@ -411,27 +411,26 @@
411 PCSDK.stat.addExposure( location: number, banner_data: Array< any > | any ): void 411 PCSDK.stat.addExposure( location: number, banner_data: Array< any > | any ): void
412 ``` 412 ```
413 413
414 - 定义:对展示的一个或者多个广告位添加曝光,SDK在onHide时候上报曝光数据到后台,后台会进行统计展示 414 + 定义:对一个或者多个展示的推广位添加曝光,SDK在onHide时候上报曝光数据到后台,后台进行统计查阅
415 415
416 参数: 416 参数:
417 417
418 ```javascript 418 ```javascript
419 location: number 必传,统一传递为:100 419 location: number 必传,统一传递为:100
420 420
421 - banner_data:any 必传,添加展示广告位曝光数据,可添加一个或者多个曝光数据,banner_data参数数据结构为上面bannerList api返回的列表数据的项BannerData实体结构:Array<BannerData> | BannerData 421 + banner_data:any 必传,添加展推广位曝光数据,可添加一个或者多个曝光数据,banner_data参数数据结构为上面bannerList api返回的列表数据的项BannerData实体结构:Array<BannerData> | BannerData
422 422
423 ``` 423 ```
424 424
425 > 提示: 425 > 提示:
426 > 426 >
427 - > 展示猜你喜欢/抽屉广告位:获取到9个广告位数据,展示了5个其中广告位,调用曝光接口传入广告数据为展示的5个,剩余的4个需展示的时候再调用曝光api接口传入。 427 + > 展示猜你喜欢/抽屉推广位:获取到9个推广位数据,展示了其中5个,调用曝光接口传入推广位数据为展示的5个,剩余的4个需在其展示的时候再调用曝光api接口传入。
428 > 428 >
429 - > 展示交叉悬浮框广告位:展示一个,将此广告位传入曝光接口,点击展示下一个广告,则把这个最新展示广告数据传入曝光api  
430 - 示例:交叉悬浮框广告位显示及添加曝光实现(拉取广告列表后,每次只显示一个,点击一个切换下一个,定时器4秒切换下一个,直到列表为空,请求新的广告位列表) 429 + > 展示交叉悬浮框推广位:展示一个,将此推广位传入曝光接口,点击展示下一个,则把这个最新的数据传入曝光api
431 430
432 - 思路:根据交叉悬浮框类型调用PCSDK.stat.bannnerList接口获取交叉悬浮框广告位列表,显示第一个,每隔4秒切换到下一个,点击一个切换下一个展示。此示例没有使用定时器方式,采用的是监听动画帧实现。 431 + 示例:根据交叉悬浮框类型调用PCSDK.stat.bannnerList接口获取交叉悬浮框推广位列表,显示第一个,每隔4秒切换到下一个,点击一个切换下一个展示。此示例没有使用定时器方式,采用的是监听动画帧实现。
433 ```javascript 432 ```javascript
434 -/** 433 + /**
435 * 演示交叉推广位使用示例 434 * 演示交叉推广位使用示例
436 */ 435 */
437 export default class TestBannerSample extends ui.ads.ADbtnUI { 436 export default class TestBannerSample extends ui.ads.ADbtnUI {
@@ -120,17 +120,21 @@ enum EventKeys { @@ -120,17 +120,21 @@ enum EventKeys {
120 ```javascript 120 ```javascript
121 // 签到功能 121 // 签到功能
122 private onSign() { 122 private onSign() {
  123 + // 事件上报:签到页面打开
123 PCSDK.stat.event(EventKeys.FunctionSign, '主界面'); 124 PCSDK.stat.event(EventKeys.FunctionSign, '主界面');
  125 + PopwinMananger.I.openWin(SignPopwin);
124 } 126 }
125 127
126 // 开始加载资源 128 // 开始加载资源
127 private loadRes() { 129 private loadRes() {
128 - PCSDK.stat.event(EventKeys.LoadingExhibition, '加载界面'); 130 + // 事件上报:开始加载资源
  131 + PCSDK.stat.event(EventKeys.LoadingExhibition, '加载界面');
129 LoaderManager.I.setCallback(this.onLoadedMain, this.onProgressMain, null, this).loadMain(); 132 LoaderManager.I.setCallback(this.onLoadedMain, this.onProgressMain, null, this).loadMain();
130 } 133 }
131 134
132 // 升级领奖 135 // 升级领奖
133 private onReward(e: Laya.Event) { 136 private onReward(e: Laya.Event) {
  137 + // 事件上报:发起升级领奖
134 PCSDK.stat.event(EventKeys.LvUpRewards, '升级界面'); 138 PCSDK.stat.event(EventKeys.LvUpRewards, '升级界面');
135 SDKTools.shareDispatch(ShareKey.LevelUpDiamond, { 139 SDKTools.shareDispatch(ShareKey.LevelUpDiamond, {
136 success: this.handleDoubleReward, 140 success: this.handleDoubleReward,