Markdown |
---|
# 斐波那契 小程序 SDK 接入文档 |
...
## 目录 |
...
--- |
...
[1. SDK 使用步骤](#1-sdk使用步骤) |
...
- [1.1 步骤一:小程序设置数据服务白名单](#11-步骤一:小程序设置数据服务白名单) |
...
- [1.2 步骤一:引入 JS 文件](#11-步骤二:引入 JS 文件) |
...
- [1.3 步骤二:通过 initApp 接口初始化](#12-步骤三:通过 initApp 接口初始化) |
...
[2. SDK 接口](#2-sdk接口) |
...
- [2.1 小程序打开事件](#21-小程序打开事件) |
...
- [2.2 小程序退出事件](#22-小程序退出事件) |
...
- [2.3 微信分享事件](#23-微信分享事件) |
...
- [2.4 按钮点击事件](#24-按钮点击事件) |
...
- [2.5 自定义表单推送](#25-自定义表单推送) |
...
## 正文 |
...
--- |
...
### 1. SDK 使用步骤 |
...
#### 1.1 步骤一:小程序设置数据服务白名单 |
...
登录[微信公众平台](https://mp.weixin.qq.com)(必须是管理员帐号),进入 |
...
"开发" > "开发设置" 配置页面,在 "服务器域名 - request合法域名" 配置项中添加 **https://sdkapi.fibodata.com** 项。 |
...
#### 1.2 步骤二:引入 JS 文件 |
...
[ |
...
【SDK文件地址:https://res.fibodata.com/data/fibosdk.miniapp.min.js】](https://res.fibodata.com/data/fibosdk.miniapp.min.js) |
...
下载SDK文件并把文件放入小程序的工程目录中,并在小程序的app.js中引入。 |
...
```js |
...
import fiboSDK form "./lib/fibosdk.miniapp.min.js" //文件路径请按自己的实际情况修改 |
...
``` |
...
#### 1.3 步骤三:通过 initApp 接口初始化 |
...
为了能够正常使用 SDK 接口,必须首先调用 initApp 接口进行初始化,initApp 接口返回值为一个Promise对象。 |
...
注意事项: |
...
1. 请在小程序授权完成获取到用户信息后再进行 SDK 的初始化 |
...
2. [调用 wx.getUserInfo 获取用户信息时,请设置参数 lang = zh_CN](https://developers.weixin.qq.com/miniprogram/dev/api/open-api/user-info/wx.getUserInfo.html) |
...
参数获取: |
...
1. [如何获取 pfid (注册兔展帐号然后联系客服获取 pfid)](https://www.rabbitpre.com/) |
...
2. [如何生成 appid (自行生成一个标记当前应用的uuid,确定后不要更改且请妥善保存)](http://www.uuid.online/) |
...
3. [如何获取当前小程序打开的场景值 scene](https://developers.weixin.qq.com/miniprogram/dev/framework/app-service/scene.html) |
...
```js |
...
App({ |
...
onShow: function() { |
...
var fibo = fiboSDK.initApp({ |
...
pfid: "", // |
...
(必须)斐波那契分配的平台id appid: "", // (必须,1-50位,数字,大小写字母,下划线,短横线)表示小程序应用的id,一般由用户自定义 |
...
apptype: "", // (必须)应用类型,第三方小程序应用(tpminiapp) |
...
mpid: "", // |
...
(必须)小程序的appid openid: "", // |
...
(必须)获取的用户openid unionid: "", // |
...
(非必须参数,如果小程序授权有unionid,则必须填入)获取的用户unionid userInfo: {}, // |
...
(必须)授权获取的用户信息JSON对象 scene: "", //(必须)当前小程序打开的场景值 |
...
title: "" // (非必须)当前小程序的名称 |
...
}); |
...
// init 接口的返回值为一个Promise对象,可以调用 then 方法实现相应的业务逻辑。 |
...
fibo.then(function() |
...
{ // 分享链接,将需要分享的链接传入fiboSDK.dealUrl() |
...
var shareLink = fiboSDK.dealUrl(defaultShareData.path); |
...
... |
...
}, function(err){ |
...
}); |
...
} |
...
}); |
...
``` |
...
### 2. SDK 接口 |
...
#### 2.1 小程序打开事件 |
...
使用场景:小程序启动或切换到前台。 |
...
记录用户打开小程序的操作。 |
...
```js App({ |
...
// 小程序启动或切换到前台 |
...
onShow: function() |
...
{ fiboSDK.enterApp(); |
...
} }); |
...
``` |
...
#### 2.2 小程序退出事件 |
...
使用场景:小程序切换到后台。 |
...
记录用户最小化或退出小程序的操作。 |
...
```js App({ |
...
// 小程序切换到后台 |
...
onHide: function() |
...
{ fiboSDK.leaveApp(); |
...
} }); |
...
``` |
...
#### 2.3 微信分享事件 |
...
使用场景: |
...
1. 小程序在各个时间段的分享率 |
...
2. 传播的层级,各层级所占比例 |
...
```js |
...
onShareAppMessage: function() { |
...
fiboSDK.sharePage(); //推送分享操作 |
...
return { |
...
title: "", // 分享标题 |
...
path: fiboSDK.dealUrl(sharePath), // 分享页面路径,将需要分享的链接传入fiboSDK.dealUrl() |
...
imageUrl: "", // 分享图标 |
...
} |
...
} |
...
``` |
...
#### 2.4 按钮点击事件 |
...
使用场景: 通过接入按钮点击事件,可以获取到按钮的点击次数和转化率。 |
...
对于需要记录点击次数的按钮,需要在待点击的元素上绑定 click 事件并调用 **fiboSDK.btnClick\(buttonId, buttonName)**,其中参数 buttonId 为按钮识别 id,buttonName 是该按钮的名称,例如: |
...
```js // <button bindtap="buttonClick">登录</button> |
...
function buttonClick() |
...
{ //登录流程... |
...
fiboSDK.btnClick("loginBtn", "登录按钮"); |
...
} |
...
``` |
...
如果需要统计多个不同按钮的点击次数,buttonId 必须不同。 如果两个不同的按钮传入同一个 buttonId,会算成同一个按钮的点击事件。 |
...
**为了防止 buttonId 与其他作品的冲突,导致统计混乱,建议使用"appid-buttonId"的形式作为 buttonId 传入。** |
...
#### 2.5 自定义表单推送 |
...
使用场景:推送自定义表单后,可以及时获取收集到的表单数据。 |
...
对于需要提交表单信息的小程序,可以推送表单信息,表单的格式必须是键值对。 |
...
```js var form = { 姓名: "张三", |
...
手机: "13512345678" |
...
}; |
...
fiboSDK.saveFormInfo(form); |
...
``` |
...
#### 2.6 处理 url 参数 |
...
使用场景:用户在分享时,处理分享链接,添加或修改 path 中 lc, sui 参数。 |
...
注意事项:在调用此方法前,一定要保证已经成功的调用 fiboSDK.initApp 接口完成了SDK的初始化。 |
...
- lc 从 0 开始(int) 层级参数 |
...
- sui 分享来源者的 viewid,由 sdk 从小程序 path 中获取 |
...
- 小程序页面 path 中请不要使用 lc、sui、cnl、cnltype、saudid、stepid、actid 来设置自定义参数; |
...
例如:在处理作品的分享链接时
...
例如:在处理作品的分享链接时 ```js var link = fiboSDK.dealUrl(sharePath); |
...
// 设置为分享链接 |
...
// ... |
...
``` |