setClipboardData 拦截器
setClipboardData
拦截器用于处理剪贴板权限授权,特别针对抖音小程序的剪贴板权限处理进行了优化。
功能描述
该拦截器主要用于处理抖音小程序剪贴板权限授权问题,当用户拒绝授权时,会引导用户去设置页面完成授权。支持以下功能:
- 自动检测剪贴板权限授权状态
- 处理用户拒绝授权的情况
- 引导用户到设置页面完成授权
- 提供友好的授权提示界面
平台支持
平台 | 支持情况 | 备注 |
---|---|---|
APP-PLUS | ✅ 支持 | 全平台支持 |
MP-TOUTIAO | ✅ 支持 | 抖音小程序特殊处理 |
MP | ✅ 支持 | 其他小程序平台 |
H5 | ✅ 支持 | 浏览器环境下的剪贴板操作 |
使用方法
typescript
import { setClipboardDataInterceptor } from "uni-toolkit/interceptors";
// 在应用入口处安装拦截器
app.use(setClipboardDataInterceptor);
// 正常调用uni.setClipboardData,拦截器会自动处理权限
uni.setClipboardData({
data: "要复制的内容",
success: () => {
console.log("复制成功");
},
fail: (err) => {
console.error("复制失败", err);
}
});
特殊处理
抖音小程序
在抖音小程序中,当用户拒绝剪贴板权限授权时,拦截器会:
- 检测到权限拒绝错误(
auth deny
) - 显示授权提醒弹窗
- 提供两个选项:
- "去设置":跳转到设置页面
- "取消":取消操作
- 在设置页面完成授权后,显示成功提示
其他平台
在其他平台中,拦截器会保持原有行为,不做特殊处理。
注意事项
- 拦截器仅在抖音小程序中进行特殊处理
- 用户授权成功后需要重新执行复制操作
- 拦截器会自动处理授权流程,开发者无需额外编写代码
- 授权提醒文案可以根据实际需求进行自定义修改