FinClip为企业提供小程序生态圈技术产品,开发者可在FinClip小程序开发帮助中心找到相关FinClip小程序指引

# 自定义分享常见问题

为了满足不同 App 的分享场景要求,FinClip 小程序 SDK 支持开发者在客户端自行配置shareSDK URL,并指向分享落地页完成分享操作。

# 1.实现落地页

当客户端 App 中配置了落地页地址之后,客户点击打开落地页时会访问${url}?params=xxxxx的地址。在此过程中 H5 中可以读取param参数进行 base64 处理获取到分享的参数。

示例代码如下:

const { params } = query;
const {
   screenshotUrl,  // 分享页截屏地址
   miniAppName, // 小程序名称
   miniAppDesc, // 小程序简介
   miniAppLogo, // 小程序 logo
   miniAppId, // 小程序 appId
   miniAppLink, // app 唤起 scheme
   wechatAppId, // 微信小程序 id
   miniAppPath, // 小程序页面路径
   miniAppQuery, // 小程序页面参数
 } = Object.fromEntries(new URLSearchParams(window.atob(decodeURIComponent(params))));

# 2. 通过 scheme 跳转的 App 打开小程序

客户端 App 中也可以直接通过window.location.href = miniAppLink的scheme 来访问小程序内容。在此过程中,App 需要按照以下文档配置好scheme跳转,且 iOS 与 Android 操作系统中配置的scheme需要保持一致。

参考链接如下:

# 3. 在微信中打开外部小程序的方式

在微信中打开小程序并完成自定义分享功能分别有以下两种方案,分别为通过判断微信浏览器 UA 或使用微信 JSSDK 的方式进行引导。

# 方案一:判断微信的 UA,添加浮窗在浏览器中打开

本方法较为简单,即直接通过前端页面中浏览器返回的 UA 进行识别,当识别浏览器中反馈的 UA 头包括MicroMessenger时,在页面中增加引导用户通过“系统默认浏览器”打开当前页面,随后跳转至自有 App 中即可。

# 方案二:使用微信 JSSDK

  1. 首先需要在微信公众平台进入“公众号设置”的“功能设置”中,完成JS接口安全域名”的配置。

  2. 随后需要对微信 JSSDK 进行初始化操作,主要包括以下内容: A. 相关字段声明

    appId: '', // 必填,公众号的唯一标识
    timestamp: , // 必填,生成签名的时间戳
    nonceStr: '', // 必填,生成签名的随机串
    signature: '',// 必填,签名
    

    B. 通过 config 接口注入权限验证配置,具体可参考 这里 (opens new window) C. 在 AppID 中,需填入非个人主体的已认证小程序 D. 使用权限签名算法生成签名,详情可查看 这里 (opens new window)

  3. 需要在 App 中引入微信开放平台 SDK,可以参考 这里 (opens new window) 完成相关配置,随后在开放平台 - 获取移动应用的 AppID;

  4. 需要使用开发标签打开 App 中链接,操作方法见 这里 (opens new window)

© 2022 FinClip with ❤