Skip to content

Commit

Permalink
Merge pull request #268 from growingio/docs/update_web_upgrade
Browse files Browse the repository at this point in the history
docs: update web upgrade
  • Loading branch information
Anoiing authored Nov 20, 2023
2 parents c77d259 + 93d5fe9 commit b5c4a42
Show file tree
Hide file tree
Showing 25 changed files with 367 additions and 82 deletions.
2 changes: 1 addition & 1 deletion docs/giokit/android/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ import useBaseUrl from '@docusaurus/useBaseUrl';

### 事件库

以列表形式展示自插件启用后所有的埋点数据及其发送状态,点击单条数据可查看数据详情。数据格式请移步[测量协议](/docs/Measurement)。数据关注点请参考[校验时需关注字段和说明](/knowledge/debugverify#校验时需关注字段和说明)
以列表形式展示自插件启用后所有的埋点数据及其发送状态,点击单条数据可查看数据详情。数据格式请移步[测量协议](/knowledge/measurement)。数据关注点请参考[校验时需关注字段和说明](/knowledge/debugverify#校验时需关注字段和说明)
同时您可以通过输入事件类型来进行筛选,可以选中复制数据详情。

<center><img alt="埋点数据" src={useBaseUrl('/img/giokit/android/sdkdata.gif')}/></center>
Expand Down
2 changes: 1 addition & 1 deletion docs/giokit/ios/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ import useBaseUrl from '@docusaurus/useBaseUrl';

### 事件库

以列表形式展示自插件启用后所有的埋点数据及其发送状态,点击单条数据可查看数据详情。数据格式请移步[测量协议](/docs/Measurement)。数据关注点请参考[校验时需关注字段和说明](/knowledge/debugverify#校验时需关注字段和说明)
以列表形式展示自插件启用后所有的埋点数据及其发送状态,点击单条数据可查看数据详情。数据格式请移步[测量协议](/knowledge/measurement)。数据关注点请参考[校验时需关注字段和说明](/knowledge/debugverify#校验时需关注字段和说明)

<img alt="埋点数据" src={useBaseUrl('/img/giokit/ios/sdkdata.gif')}/>

Expand Down
31 changes: 30 additions & 1 deletion docs/miniprogram/initSettings.md
Original file line number Diff line number Diff line change
Expand Up @@ -162,12 +162,30 @@ gdp('init', accountId, dataSourceId, appId, {

**<font color="#FC5F3A">注意:</font>如果 extraParams 和 ignoreFields 中同时指定了同一字段,getGioInfo 将不再获取到指定的字段,即 ignoreFields 优先级更高。**

### originalSource

默认情况下,SDK发送访问事件(VISIT)时,会使用用户初始进入小程序时的`path``query`信息,以保证能正确上报utm参数等进入信息。但是需要注意的点是,当您的小程序不是在用户进入的页面发送访问事件时,会导致VISIT事件和PAGE事件上报的path和query不一致,从而平台的页面跳出率数据会异常。

举例:如果您的小程序在进入时关闭了数据采集,用户进入P1页面,操作后跳转进入P2页面,然后您打开了采集开关。此时,发送的VISIT事件中的path和query是P1页面的,而PAGE事件的path和query则是P2页面的,这就会导致跳出率异常。

如果您不是上述场景,维持默认值即可;如果您是上述场景,不考虑utm相关信息丢失的问题且想保证跳出率准确,那么可以关闭该配置项。

```js
gdp('init', accountId, datasourceId, appId, {
originalSource: false,
...其他配置项,
});
```

### serverUrl

Saas客户忽略此项配置;OP私有部署客户请填写此项,否则您的服务将无法收获行为数据上报。支持域名和IP地址。

```js
gdp('init', accountId, datasourceId, { serverUrl: 'https://api.growingio.com' });
gdp('init', accountId, datasourceId, appId, {
serverUrl: 'your server url',
...其他配置项,
});
```

您也可以通过调用动态修改配置接口来修改它。[参考文档](/docs/miniprogram/commonlyApi#5修改请求协议scheme)
Expand Down Expand Up @@ -227,3 +245,14 @@ gdp('init', accountId, dataSourceId, appId, {
相反,数值越大,节流限制越大,发送时间越远离事件产生时间;设为 2000 则产生事件后会推入请求队列进行计时,直至下一次事件产生的间隔超过 2 秒或者 2 秒内没有事件产生才上报数据(请求队列中存储的事件数达到 50 条时会强制发送一次)。虽然请求次数会变少,但是一旦用户操作过快杀掉了小程序进程或者退出了小程序,最后的行为数据可能就被丢失无法上报。

我们推荐使用 1 秒(即默认值)的间隔限制,最大程度上减少性能影响同时兼顾数据上报准确性。

### version

该字段的含义为当前客户站点的版本号,建议填写,可用于分析不同版本之间数据的对比。如不填写,默认值则为1.0.0。

```js
gdp('init', accountId, datasourceId, {
version: 'your miniprogram app version',
...其他配置项,
});
```
74 changes: 74 additions & 0 deletions docs/miniprogram/integration/wechat.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ values={[
{label: '原生', value: '原生'},
{label: 'uni-app', value: 'uni-app'},
{label: 'Taro', value: 'Taro'},
{label: 'MPX', value: 'MPX'},
{label: '小程序插件', value: '小程序插件'},
]}
>
Expand Down Expand Up @@ -333,6 +334,79 @@ export default App;
```js
原有 require 的引用方式依然可以使用。
const gdp = require('./utils/gio/gio-taro.js').default;
```

</TabItem>
<TabItem value="MPX">

#### 1、加载 SDK

下载SDK添加至项目目录中,下文中以`utils/gio`目录作为下载集成的示例目录(目录和 SDK 文件可自定义重命名)。

微信原生 SDK 下载:<https://assets.giocdn.com/sdk/minip/4.0.0/gio-wechat.js><br/>
**<font size="2">(如果您点击链接在浏览器中直接打开了文件并不是下载文件,请尝试右键点击链接,选择 `链接存储为...` 即可正常触发下载)</font>**

#### 2、使用`init`方法进行初始化

参考示例代码在 app.js 小程序主文件中引用SDK并在 App 实例之前调用`init`方法进行初始化。

**<font size="4" color="#FC5F3A">注意不要随意修改初始化代码位置,SDK 不支持在小程序的任意生命周期中进行初始化。</font>**

#### 3、全局替换方法

**全局替换 MPX的`createApp`方法为`GioApp``createPage`方法为`GioPage``createComponent`方法为`GioComponent`**

#### 示例代码

```js
// app.js
import gdp, { GioApp } from './utils/gio/gio-wechat.js';
import mpx from '@mpxjs/core';

gdp('init', 'your GrowingIO accountId', 'your dataSourceId', 'your AppId', {
version: 'your miniProgram version',
// OP私有部署客户请填写serverUrl,Saas客户请忽略
serverUrl: 'your server url',
...other settings
});

// 修改mpx的 createApp 方法为 GioApp ↓↓↓
GioApp({ ... });
```

```js
// page.js
import gdp, { GioPage } from '../utils/wechat';

// 修改mpx的 createPage 方法为 GioPage ↓↓↓
GioPage({
data: {...},
onShow() {
gdp('xxx', xxx);
...
},
...
});
```

```js
// component.js
import gdp, { GioComponent } from '../utils/wechat';

// 修改mpx的 createComponent 方法为 GioComponent ↓↓↓
GioComponent({
data: {...},
onShow() {
gdp('xxx', xxx);
...
},
...
});
```

```js
原有 require 的引用方式依然可以使用。
const gdp = require('./utils/gio/gio-wechat.js').default;
```

</TabItem>
Expand Down
51 changes: 51 additions & 0 deletions docs/miniprogram/plugins/abtest.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---
sidebar_position: 5
title: A/B测试
---

## 简介(gioABTest)

用于A/B测试功能的插件。

## 集成

### 1、引入

#### 下载集成引入

- 下载插件并复制至项目中:
**<font size="3"><https://assets.giocdn.com/sdk/minip/4.0.0/plugins/gioABTest.js></font>**<br/>
**<font size="2">(如果您点击链接在浏览器中直接打开了文件并不是下载文件,请尝试右键点击链接,选择 `链接存储为...` 即可正常触发下载)</font>**

```js
import gioABTest from './utils/plugins/gioABTest';
```

#### npm 集成引入

```js
import gioABTest from 'gio-miniprogram-sdk/plugins/gioABTest';
```

### 2、准备配置项

| **字段名** | **参数类型** | **默认值** | **说明** |
| ----------------- | ------------ | ---------- | ------------------------------- |
| `abServerUrl` | `string` | `-` | 必填,ABTest 分流服务的请求地址 |
| `requestInterval` | `number` | `5` | 选填,单位分钟,请求间隔 |
| `requestTimeout` | `number` | `1000` | 选填,单位毫秒,请求超时时长 |

### 3、添加插件配置项并注册

```js
gdp('registerPlugins', [{ ...gioABTest, options: { abServerUrl: 'server url' }}]);
gdp('init', xxxx);
```

### 4、api调用

```js
gdp('getABTest', 实验层Id, (result: any) => {
console.log(result);
});
```
2 changes: 0 additions & 2 deletions docs/miniprogram/plugins/compress.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@ title: 数据加密压缩
**<font size="3"><https://assets.giocdn.com/sdk/minip/4.0.0/plugins/gioCompress.js></font>**<br/>
**<font size="2">(如果您点击链接在浏览器中直接打开了文件并不是下载文件,请尝试右键点击链接,选择 `链接存储为...` 即可正常触发下载)</font>**

- 引入插件

```js
import gioCompress from './utils/plugins/gioCompress';
```
Expand Down
2 changes: 0 additions & 2 deletions docs/miniprogram/plugins/eventAutoTracking.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,6 @@ title: 无埋点
**<font size="3"><https://assets.giocdn.com/sdk/minip/4.0.0/plugins/gioEventAutoTracking.js></font>**<br/>
**<font size="2">(如果您点击链接在浏览器中直接打开了文件并不是下载文件,请尝试右键点击链接,选择 `链接存储为...` 即可正常触发下载)</font>**

- 引入插件

```js
import gioEventAutoTracking from './utils/plugins/gioEventAutoTracking';
```
Expand Down
2 changes: 0 additions & 2 deletions docs/miniprogram/plugins/impressionTracking.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@ title: 半自动埋点浏览
**<font size="3"><https://assets.giocdn.com/sdk/minip/4.0.0/plugins/gioImpressionTracking.js></font>**<br/>
**<font size="2">(如果您点击链接在浏览器中直接打开了文件并不是下载文件,请尝试右键点击链接,选择 `链接存储为...` 即可正常触发下载)</font>**

- 引入插件

```js
import gioImpressionTracking from './utils/plugins/gioImpressionTracking';
```
Expand Down
21 changes: 13 additions & 8 deletions docs/miniprogram/plugins/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,22 +21,27 @@ gdp('registerPlugins', [
**<font size="3"><https://assets.giocdn.com/sdk/minip/4.0.0/plugins.zip></font>**<br/>
**<font size="2">(如果您点击链接在浏览器中直接打开了文件并不是下载文件,请尝试右键点击链接,选择 `链接存储为...` 即可正常触发下载)</font>**

## 无埋点插件(gioEventAutoTracking)
### A/B测试插件(gioABTest)

用于A/B测试功能的插件。<br />
[参考文档](/docs/miniprogram/plugins/abtest)

### 数据加密压缩插件(gioCompress)

上报请求的数据进行加密压缩。<br />
[参考文档](/docs/miniprogram/plugins/compress)

### 无埋点插件(gioEventAutoTracking)

自动采集 `tap``longtap``change` 事件的插件。<br />
[参考文档](/docs/miniprogram/plugins/eventAutoTracking)

## 半自动埋点浏览插件(gioImpressionTracking)
### 半自动埋点浏览插件(gioImpressionTracking)

用户标记一个元素并提供埋点事件,SDK 负责监控指定元素,当此元素出现在屏幕可视区域中时发送用户配置的埋点事件的插件。<br/>
[参考文档](/docs/miniprogram/plugins/impressionTracking)

## 数据加密压缩插件(gioCompress)

上报请求的数据进行加密压缩。<br />
[参考文档](/docs/miniprogram/plugins/compress)

## 性能监控
### 性能监控

提供小程序首屏加载监控、错误监控和网络请求监控的全方位性能监控采集插件。<br/>
[参考文档](/docs/miniprogram/plugins/performance)
2 changes: 1 addition & 1 deletion docs/miniprogram/plugins/performance.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
sidebar_position: 5
sidebar_position: 6
title: 性能监控
---

Expand Down
9 changes: 9 additions & 0 deletions docs/miniprogram/upgrade/cdp.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,10 @@ gdp('track', eventId, eventLevelVariables);

检查埋点事件(track)、用户属性事件(setUserAttributes)、半自动采集浏览事件(曝光事件)的属性键值对,key和value是否符合限制条件[参考文档](/docs/webjs/commonlyApi#其他),如有超出限制或超出限制的可能,请调整业务逻辑。

### 7、检查采集标记

从4.0版本开始,所有事件中的index字段取值将从 **1** 开始,所以如果您在小程序应用中使用了`data-index`,请注意排查修改。

</TabItem>
<TabItem value="3.8.x版本">

Expand Down Expand Up @@ -157,5 +161,10 @@ gdp('track', eventId, eventLevelVariables);
### 6、检查埋点事件和用户属性事件

检查埋点事件(track)、用户属性事件(setUserAttributes)、半自动采集浏览事件(曝光事件)的属性键值对,key和value是否符合限制条件[参考文档](/docs/webjs/commonlyApi#其他),如有超出限制或超出限制的可能,请调整业务逻辑。

### 7、检查采集标记

从4.0版本开始,所有事件中的index字段取值将从 **1** 开始,所以如果您在小程序应用中使用了`data-index`,请注意排查修改。

</TabItem>
</Tabs>
28 changes: 27 additions & 1 deletion docs/miniprogram/upgrade/saas.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,10 @@ Component({ ... });

检查埋点事件(track)、用户属性事件(setUserAttributes)、半自动采集浏览事件(曝光事件)的属性键值对,key和value是否符合限制条件[参考文档](/docs/miniprogram/commonlyApi#object参数限制),如有超出限制或超出限制的可能,请调整业务逻辑。

### 7、检查采集标记

从4.0版本开始,所有事件中的index字段取值将从 **1** 开始,所以如果您在小程序应用中使用了`data-index`,请注意排查修改。

</TabItem>
<TabItem value="3.8.x版本">

Expand All @@ -133,8 +137,30 @@ Component({ ... });

其他配置项请[参考文档](/docs/miniprogram/initSettings)按需配置功能,如果您不确定是否需要对应配置项,请咨询我们的技术支持。

### 4、检查埋点事件和用户属性事件
### 4、检查api调用

以下步骤仅列出需要改动的点,没有列出的api或内容即为自动兼容无需更改。

1. 移除**`setEvar`**方法调用。如需使用转化变量,请将转化变量放在埋点事件属性(track)中进行上报。未使用则忽略。
2. 移除**`setPage`**方法调用。如需使用页面级变量,请将变量加入页面参数query中,作为页面参数的一部分上报,平台会自动解析处理。如需使用页面访问变量,请使用`setPageAttributes`[参考文档](/docs/miniprogram/commonlyApi#12设置页面属性setpageattributes)。未使用则忽略。

> 请注意两者的区别:<br/>
> \* 以往的`setPage`对应的是当前页面所有事件的事件属性;对应现在的改动则是将变量放入页面参数query中的方式,效果一致。<br/>
> \* `setPageAttributes`对应的只有页面访问事件的属性,并不会对页面中其他事件生效。<br/>
> \* 如果您需要对页面中的所有埋点事件添加属性,请使用`setGeneralProps`[参考文档](/docs/miniprogram/commonlyApi#10设置埋点通用属性setgeneralprops)
3. 移除**`setVisitor`**方法调用。如需使用访问用户变量,请将访问用户变量放在用户属性(setUserAttributes)中进行上报。未使用则忽略。
4. 重命名替换**`setUser`****`setUserAttributes`**,调用方式不变。未使用则忽略。

其他api调用请[参考文档](/docs/miniprogram/commonlyApi)使用,如果您不确定是否需要调用api,请咨询我们的技术支持。

### 5、检查埋点事件和用户属性事件

检查埋点事件(track)、用户属性事件(setUserAttributes)、半自动采集浏览事件(曝光事件)的属性键值对,key和value是否符合限制条件[参考文档](/docs/miniprogram/commonlyApi#object参数限制),如有超出限制或超出限制的可能,请调整业务逻辑。

### 6、检查采集标记

从4.0版本开始,所有事件中的index字段取值将从 **1** 开始,所以如果您在小程序应用中使用了`data-index`,请注意排查修改。

</TabItem>
</Tabs>
Loading

0 comments on commit b5c4a42

Please sign in to comment.