第三方开发者可以在兔展开放平台设置自定义统计SDK,下面将说明SDK要遵循的几点要求。
开发者需要实现的SDK对象大致如下:
```typescript window.opfStatisticSdk = { init: (initData: InitData) => void, btnClick: (btnname: string, remark: string, type?: string) => void, dealUrl: (url: string) => string, share: (type: string) => void, switchPage(currentPage: number, targetPage: number, pageSize: number) => void, exitPage: (curentPage: number) => void, saveFormInfoForRabbit: (formData: Record<string, any>) => Promise<Record<string, any>>, saveFormInfo: (formInfo: Record<string, any>, version?: string, eventType?: string) => Promise<Record<string, any>>, ... } interface InitData { pfid: string, appid: string, rabbitOpenid: string, rabbitUnionid: string, userInfo: Record<string, any>, apptype: string, mpid: string, openid: string, unionid: string } ``` |
下面将逐一进行说明。
全局命名
SDK需要在全局window中对导出一个SDK对象,命名为:opfStatisticSdk
SDK初始化方法,接受initData参数,包括了作品和访客的部分信息,在作品初始化时会自动调用此方法。
处理转发链接的参数,用于大数据的关系链分析。
提交表单数据,异步操作,需要返回一个Promize对象,包含提交结果。具体需参考兔展的实现逻辑。
作品被转发或分享到朋友圈时触发,接受type参数,标识分享类型。
作品按钮被点击时触发,接受3个参数,btnname标识按钮名称,remark标识按钮备注,可选type标识按钮类型。
作品页面切换时触发,接收3个参数,currentPage标识当前页码,targetPage标识目标页码,pageSize标识作品总数。
作品页面被关闭时触发,接收currentPage参数,标识关闭时所在页码。
除了上述必须实现的方法,开发者也可以实现自己的方法,自行根据情况调用。