# 斐波那契 小程序 SDK 接入文档 ## 目录 --- [1. SDK 使用步骤](#1-sdk使用步骤) - [1.1 步骤一:引入 JS 文件](#11-步骤一:引入 JS 文件) - [1.2 步骤二:通过 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 步骤一:引入 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.2 步骤二:通过 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); // 设置为分享链接 // ... ``` |