Skip to content

Commit

Permalink
Merge pull request #349 from growingio/web
Browse files Browse the repository at this point in the history
发布web4.2.3,小程序4.3.1
  • Loading branch information
Anoiing authored Nov 20, 2024
2 parents a3e8396 + 0a676e2 commit 8a85f3d
Show file tree
Hide file tree
Showing 26 changed files with 165 additions and 87 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,4 @@ yarn-error.log*
pnpm-lock.yaml
.pnpm-debug.log
package-lock.json
yarn.lock
4 changes: 2 additions & 2 deletions docs/index/webjs.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ GrowingIO WebJS SDK 支持 IE11 浏览器、360 浏览器、谷歌浏览器、
当 SDK 加载后,会自动开始采集以下三类数据:

* **用户访问数据:** 网站访客在何时何地访问了哪个网页,收集包括域名、页面路径、浏览器、操作系统、屏幕分辨率、访问来源、用户唯一标识 ID、访问唯一标识 ID、访问时间、页面标题等信息。
* **行为数据:**用户在网站上的交互行为,比如点击链接、修改选择,都会被自动采集,内容包括交互元素的页面信息、交互行为类型、交互元素的标记 ID、交互元素的内容、交互元素的超链接、交互元素的位置信息。SDK 不采集除搜索框外任何用户在表单里输入的信息。
* **内容数据:**当用户访问网站时,用户看到的内容即页面出现的元素,会被自动采集,包括内容所在的页面信息、元素的标记 ID、文本内容、超链接、位置信息。
* **行为数据:** 用户在网站上的交互行为,比如点击链接、修改选择,都会被自动采集,内容包括交互元素的页面信息、交互行为类型、交互元素的标记 ID、交互元素的内容、交互元素的超链接、交互元素的位置信息。SDK 不采集除搜索框外任何用户在表单里输入的信息。
* **内容数据:** 当用户访问网站时,用户看到的内容即页面出现的元素,会被自动采集,包括内容所在的页面信息、元素的标记 ID、文本内容、超链接、位置信息。

关于更详细的相关实现、无埋点以及一些实践的案例,请查看[小百科](/docs/webjs/encyclopedia)

Expand Down
43 changes: 35 additions & 8 deletions docs/miniprogram/initSettings.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,16 @@ title: 初始化配置
| `followShare` | `boolean` | `true` | 是否跟踪分享数据 |
| `forceLogin` | `boolean` | `false` | 是否开启强制登录模式 |
| `ignoreFields` | `string[]` | `[]` | 上报忽略字段 |
| `requestTimeout` | `number` | `5000` | 上报请求超时时长 |
| `impressionScale`| `number` | `0` | 曝光比例(小数) |
| `keepAlive` | `number` | `5` | 后台保活时长(分钟) |
| `requestTimeout` | `number` | `5000` | 上报请求超时时长(毫秒) |
| `originalSource` | `boolean` | `true` | VISIT事件是否使用初始来源 |
| `serverUrl` | `string` | `https://napi.growingio.com` | 数据上报的服务端地址 |
| `taro` | `any` | `-` | 使用 Taro 开发时使用的实例,参考集成示例代码 |
| `taroVue` | `any` | `-` | 使用 Taro3vue2/3 开发时使用的实例,参考集成示例代码 |
| `tbConfig` | `object` | `-` | 淘宝小程序配置项 |
| `uniVue` | `any` | `-` | 使用 uni-app 开发时使用的实例,参考集成示例代码 |
| `uploadInterval` | `number` | `1000` | SDK 上报数据的节流间隔时间(单位:ms) |
| `uploadInterval` | `number` | `1000` | SDK 上报数据的节流间隔时间(毫秒) |
| `version` | `string` | `1.0.0` | 小程序发版版本号(建议填写) |

## 配置项详解
Expand Down Expand Up @@ -76,8 +79,6 @@ gdp('init', accountId, dataSourceId, appId, {
| deviceBrand | 设备品牌 | screenWidth | 屏幕宽度 | operatingSystem | 系统类型 |
| deviceModel | 设备型号 | screenHeight | 屏幕高度 | platformVersion | 操作系统版本 |

#### 示例

```js
gdp('init', accountId, dataSourceId, appId, {
extraParams: [
Expand Down Expand Up @@ -145,8 +146,6 @@ gdp('identify', openId / unionId);
| deviceModel | 设备型号 | screenWidth | 屏幕宽度 |
| networkState | 网络类型 | screenHeight | 屏幕高度 |

#### 示例

```js
gdp('init', accountId, dataSourceId, appId, {
ignoreFields: [
Expand All @@ -163,11 +162,39 @@ gdp('init', accountId, dataSourceId, appId, {

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

### impressionScale

设置曝光内容的曝光比例,与曝光插件结合使用。曝光比例是指当一个需要曝光的元素出现在屏幕可见范围的部分占据自身尺寸的比例。值为 0 表示只要出现(哪怕只有一条边)即产生曝光事件,若设为 1 则表示需要整个元素完整地出现在屏幕可见范围才产生曝光事件。配置全局生效,所有的曝光内容都会按此比例执行。使用该配置项时,应当**确保已集成半自动埋点浏览插件**[参考文档](/docs/miniprogram/plugins/impressionTracking)

**取值范围:0 ~ 1 之间的任意小数;默认 0。**

```js
gdp('init', accountId, dataSourceId, appId, {
impressionScale: 0.5, // 元素一半的面积出现在屏幕可见范围中才触发曝光事件
...其他配置项,
});
```

**<font color="#FC5F3A">注意:</font>SDK、插件版本 >= 4.3.1 支持。**

### keepAlive

默认情况下,小程序从前台至后台挂起时,SDK的保活时长为默认5分钟,超时后再拉起即视为一次新的访问。早期微信官方的默认保活时长也是5分钟,以保证不会占用过多的运行内存,后来因为手机性能的发展,运行内存变得不再吃紧,微信官方移除了这一限制。SDK为了保持向下兼容,保留了这以设置。如果您需要修改保活时长,可修改该配置项。

**单位:分钟;取值范围:整数大于0,小于 60 * 24(即24小时);默认 5。**

```js
gdp('init', accountId, dataSourceId, appId, {
keepAlive: 10,
...其他配置项,
});
```

### requestTimeout

默认情况下,SDK的上报请求超时时长为 5000毫秒(即5秒),超时即自动失败。当您需要控制数据上报请求超时时长时可修改,以避免一些意外的网络请求阻塞的问题。

配置项取值:整数大于0,单位毫秒。
**单位:毫秒;取值范围:整数大于0;默认 5000(即 5 秒)。**

```js
gdp('init', accountId, dataSourceId, appId, {
Expand Down Expand Up @@ -245,7 +272,7 @@ gdp('init', accountId, dataSourceId, appId, {

为了 SDK 采集数据尽可能地减小对小程序的性能影响,我们为数据上报设置了 1 秒的节流限制以减少 SDK 并发上报的请求数量。在埋点量大或触发时机频繁时尤其适用。但这也有可能会在用户过快地结束小程序访问时丢失最后行为数据的极端情况。所以提供了`uploadInterval`配置项允许您自行评估影响并合理地设置。

**单位:ms;允许设值范围 0 ~ 2000;默认 1000(即 1 秒)。**
**单位:毫秒;取值范围:0 ~ 2000;默认 1000(即 1 秒)。**

```js
gdp('init', accountId, dataSourceId, appId, {
Expand Down
10 changes: 5 additions & 5 deletions docs/miniprogram/integration/alipay.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ import TabItem from '@theme/TabItem';
## 准备工作

1、在 GrowingIO 平台中新数据源并获取**`accountId``dataSourceId`**
1、在 GrowingIO 平台中新数据源并获取 **`accountId``dataSourceId`**

2、在您的小程序中获取**`appId`**
2、在您的小程序中获取 **`appId`**

3、在下列选项中选择对应的开发方式,并下载对应的 SDK 文件存放在项目中或使用 npm 的方式集成。

Expand All @@ -37,7 +37,7 @@ values={[

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

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

#### 2、使用`init`方法进行初始化
Expand Down Expand Up @@ -76,7 +76,7 @@ const gdp = require('./utils/gio/gio-alipay.js').default;

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

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

##### 方式二:npm 集成
Expand Down Expand Up @@ -175,7 +175,7 @@ const gdp = require('./utils/gio/gio-uniapp.js').default;

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

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

##### 方式二:npm 集成
Expand Down
10 changes: 5 additions & 5 deletions docs/miniprogram/integration/baidu.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ import TabItem from '@theme/TabItem';
## 准备工作

1、在 GrowingIO 平台中新数据源并获取**`accountId``dataSourceId`**
1、在 GrowingIO 平台中新数据源并获取 **`accountId``dataSourceId`**

2、在您的小程序中获取**`appId`**
2、在您的小程序中获取 **`appId`**

3、在下列选项中选择对应的开发方式,并下载对应的 SDK 文件存放在项目中或使用 npm 的方式集成。

Expand All @@ -37,7 +37,7 @@ values={[

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

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

#### 2、使用`init`方法进行初始化
Expand Down Expand Up @@ -76,7 +76,7 @@ const gdp = require('./utils/gio/gio-baidu.js').default;

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

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

##### 方式二:npm 集成
Expand Down Expand Up @@ -175,7 +175,7 @@ const gdp = require('./utils/gio/gio-uniapp.js').default;

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

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

##### 方式二:npm 集成
Expand Down
10 changes: 5 additions & 5 deletions docs/miniprogram/integration/bytedance.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ import TabItem from '@theme/TabItem';
## 准备工作

1、在 GrowingIO 平台中新数据源并获取**`accountId``dataSourceId`**
1、在 GrowingIO 平台中新数据源并获取 **`accountId``dataSourceId`**

2、在您的小程序中获取**`appId`**
2、在您的小程序中获取 **`appId`**

3、在下列选项中选择对应的开发方式,并下载对应的 SDK 文件存放在项目中或使用 npm 的方式集成。

Expand All @@ -37,7 +37,7 @@ values={[

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

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

#### 2、使用`init`方法进行初始化
Expand Down Expand Up @@ -76,7 +76,7 @@ const gdp = require('./utils/gio/gio-bytedance.js').default;

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

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

##### 方式二:npm 集成
Expand Down Expand Up @@ -176,7 +176,7 @@ const gdp = require('./utils/gio/gio-uniapp.js').default;

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

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

##### 方式二:npm 集成
Expand Down
12 changes: 6 additions & 6 deletions docs/miniprogram/integration/jingdong.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@ import TabItem from '@theme/TabItem';
## 准备工作

1、在 GrowingIO 平台中新数据源并获取**`accountId``dataSourceId`**
1、在 GrowingIO 平台中新数据源并获取 **`accountId``dataSourceId`**

2、在您的小程序中获取**`appId`**
2、在您的小程序中获取 **`appId`**

3、在下列选项中选择对应的开发方式,并下载对应的 SDK 文件存放在项目中或使用 npm 的方式集成。

Expand All @@ -38,7 +38,7 @@ values={[

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

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

#### 2、使用`init`方法进行初始化
Expand Down Expand Up @@ -77,7 +77,7 @@ const gdp = require('./utils/gio/gio-jingdong.js').default;

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

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

##### 方式二:npm 集成
Expand Down Expand Up @@ -177,7 +177,7 @@ const gdp = require('./utils/gio/gio-uniapp.js').default;

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

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

##### 方式二:npm 集成
Expand Down Expand Up @@ -324,7 +324,7 @@ const gdp = require('./utils/gio/gio-taro.js').default;

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

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

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

0 comments on commit 8a85f3d

Please sign in to comment.