支付宝小程序SDK接入指南

前置条件

配置request合法域名:进入支付宝开放平台后台→选择对应支付宝小程序→开发者设置→服务器域名白名单,添加request 合法域名:https://cdp.linkflowtech.com

小程序基础库支持:版本不低于2.0。

配置环境

引入SDK

点击下载最新版小程序SDK(点击此处下载,下载后是个zip文件,需要您解压zip文件,解压后是js文件),另存为文件lf-alipay-miniapp.min.js放入小程序的某个目录(例:utils)下,然后在app.js里引用js文件

入js

在app.js文件顶部(其他代码之前)添加如下代码:

var linkflow = require("./utils/lf-alipay-miniapp.min.js");

var sdk = linkflow.setup({
  name: 'lfsdk',    //SDK 使用的一个默认的全局变量名,会注册在 App 全局函数中,默认为 LFAPP
  token: 'MS1mYzE3ODQxYS1hNDUwLTQ5MjQtOWQxMC03YTQ3ODFlMjY5OTA=',    //必填,用于识别埋点小程序的连接

  defaultPath: 'pages/index/index',    
  server_url: 'https://cdp.linkflowtech.com',    //必填埋点数据收集的后端服务器地址
  auto_track: {

    app_launch: true,    //自动追踪onAppLaunch事件,默认值为true

    app_show: true,    //自动追踪onAppShow事件,默认值为true

    app_hide: true,    //自动追踪onAppHide事件,默认值为true
    page_show: true,    //自动追踪onPageShow事件,默认值为true

    page_share: true,    //自动追踪onPageShare事件,默认值为true
    page_leave: true,    //自动追踪离开页面事件,默认值为false

  }
});

开始开发(埋点)

识别联系人(identify)

作用

实名联系人,标识该用户是谁,带有何种标识、特征等,例如:姓名、性别等。

更新用户属性。

与同一开放平台下其他生活号或者小程序打通:同一个终端用户支付宝内的userid一致,查到则发生合并。

调用时机

【进入小程序】:用户进入小程序,判断localStorage是否存有用户信息;

——如果有,调用identify;

——如果没有,获取用户信息,再调用identify,并且用户信息存入localStorage。

【更新用户信息】:包括但不限于用户授权、完善用户信息等所有可能获取到用户信息的时候,例如:用户授权手机号、在用户信息页完善个人信息时。

示例代码

var identities = [{
        id: 'lexon20220223',
        type: 'ali.userId'
      },
      {
        id: '18811119999',
        type: 'mobilePhone'
      }
    ];

lfsdk.addIdentities(identities, function () {
      // success
    }, function () {
      // fail
    });


var profile = {
      name: "lx",
      nickname: 'lexon',
      mobilePhone: '18811119999',
      gender: 'male',
      dateOfBirthday: '1999-11-11',
      avatar: 'https://pre-cdp-app.m-hero.com/assets/image/favicon.png',
      email: 'lexon@163.com',
      state: '上海',
      city: '上海市',
      street: '徐家汇',
      props: {
        lexon_test_name: "alipayTest"
      }
    };

lfsdk.setProfile(profile);

// 在 `app.js` 中
linkflow.sdk.setIdentities(identities)

linkflow.sdk.setProfile(profile)
// 在页面文件 `page.js` 中

var lfsdk = getApp().lfsdk
    lfsdk.setIdentities(identities)

    lfsdk.setProfile(profile)

发送事件(sendEvent)

前置条件

在linkflow平台,配置事件元数据,此步骤可由甲方管理员或者拥有配置权限角色来配置。

示例代码

lfsdk=getApp().linkflow
    var message = {
      "event": "demo_lx_alipay",//事件ID
      "props": {//事件属性
        demo_number: 5513.1123,
        demo_date: "2023-02-24 15:20:29",
        demo_str: "Helow my friend",
        demo_bool: true,
        demo_long: 5513
      }
    }


    lfsdk.track(message, function () {
      console.log("sendEvent")
    }, function () {

    });

参数说明

字段名

属性名称

数据类型

是否必传

备注说明

nickname

昵称

字符串



mobilePhone

手机号

字符串



avatar

头像

字符串



gender

性别

字符串


male 男 ; female 女

birthday

出生年月

日期


如:1990-11-01

name

姓名

字符串



country

国家

字符串



state

字符串



city

字符串



street

街道

字符串



props

自定义属性

对象


自定义属性

验证

SDK配置验证

小程序SDK正常初始化之后,用户打开小程序之后,SDK会自动追踪如下事件(请以支付宝官网文档为准:https://opendocs.alipay.com/mini/framework/app-detail):

  • 启动小程序——当小程序初始化完成时触发,全局只触发一次。
  • 展示小程序——当小程序启动,或从后台进入前台显示时触发。
  • 隐藏小程序——当当前页面被隐藏时触发,例如跳转、按下设备 Home 键离开。
  • 打开小程序页面——当小程序启动,或从后台进入前台显示时触发
  • 分享小程序页面——点击页面菜单右上角的分享按钮时。

前台/后台定义:

  • 一般情况下,小程序用户点击右上角关闭,或者按下设备 Home 键离开支付宝时,小程序并不会直接销毁,而是进入后台。
  • 当用户再次进入支付宝或再次打开小程序时,小程序会从后台进入前台。
  • 只有当小程序进入后台 5 分钟后,或占用系统资源过高,才会被真正销毁。
  • 小程序是否销毁、是否进入后台,也与小程序自身业务逻辑、当前内存资源占用有关。

可登录linkflow连接云,在主页右侧时间轴查看是否收到这些事件。如正常收到,则SDK配置无问题;否则,可查看

识别联系人

查找到该联系人:通过联系人页面搜索姓名、昵称或者手机号。

查看用户画像:仔细核对页面左侧用户信息,确认是否与小程序端上传的数据一致。

发送事件

查找到该联系人:通过联系人页面搜索姓名、昵称或者手机号。

查看时间轴:进入人物画像,点击时间轴,在时间轴中找到该事件,并仔细核对事件属性,确保事件属性与小程序端发送的事件一致。