一套 UTS SDK 覆盖 16+ 端:uni-app 项目风控、防刷、内容安全全搞定

297 阅读4分钟

一套 UTS SDK 覆盖 16+ 端:uni-app 项目风控、防刷、内容安全全搞定

摘要:一个 uni_modules 原生插件,覆盖 H5、微信/支付宝/抖音等小程序、Android/iOS/Harmony App、快应用与 uni-app x 共 16+ 端。设备指纹、本地防刷限流、黑白名单、内容安全、人机验证、广告管控、合规分享开箱即用,自带 PHP 管理后端。核心代码 3 行接入。


你的项目是否正在被这些问题困扰?

场景后果
活动上线 10 分钟被刷走 80% 奖励预算白烧,真实用户拿不到福利
一台手机注册 50 个小号发垃圾广告平台口碑崩坏,审核成本飙升
用户发帖含违规词被平台直接下架小程序被封,运营停摆
多开/模拟器批量薅羊毛刷票活动数据失真,决策偏差
同一用户换号辱骂骚扰他人投诉不断,法务成本增加

自己做风控?至少 2 周起步、踩坑无数;分别采购微信风控 + App 风控 + H5 风控?维护成本爆炸。

UniRisk 一个插件全部搞定 —— 不是多个插件组合,不是对接多个 API,而是一个基于 DCloud uni_modules 标准的 UTS 原生付费插件,一套代码全端通用。

一套 SDK,覆盖 16+ 端

H5 · 微信小程序 · 支付宝 · 抖音 · 百度 · QQ · 快手 · 京东 · 飞书 · 小红书
Android App · iOS App · Harmony App · 鸿蒙元服务 · 快应用 · uni-app x

不分别采购微信风控 + App 风控 + H5 风控,一套代码全端通用,各端实现均以 UTS 底层能力按平台差异封装。

核心能力

能力说明
设备指纹不依赖 IMEI/IDFA,跨端采集非敏感特征,SHA-256 哈希生成 64 位定长指纹,不可逆推,跨端追踪同一设备
本地防刷限流操作冷却 + 时间窗口 + 次数限制,拦截超频请求,零网络延迟
黑白名单白名单直通放行,黑名单一键拦截,支持后端动态下发
内容安全检测文本/图片自动过检,微信/百度/QQ 原生 API + PHP 后端中转兜底
人机验证码Canvas 原生生成图形验证码,零网络依赖,操作超限时自动弹出
风险日志上报全端日志统一入库,管理后台可视化查询 + CSV 导出,断网自动缓存补报
规则动态下发后端实时更新风控参数和敏感词库,客户端自动同步
广告频次管控全局开关 + 展示间隔 + 叠加层数限制
合规分享自动校验分享文案是否含「领红包/助力/集赞」等违禁词,H5 自动处理 wx.config 签名
授权管理系统激活码签发 + 签名校验 + 离线宽限,配套 PHP 管理后台

7 个核心 API

所有 API 不抛异常,错误通过返回值中的 code / reason 传达,内置完整错误码表:

import {
  getDeviceFinger,   // 设备指纹
  checkLocalRisk,    // 本地风险校验
  getNetworkInfo,    // 公网 IP / 代理 / 运营商
  contentCheck,      // 文本/图片内容安全
  adControl,         // 广告开关与频次
  reportRiskLog,     // 风险日志上报
  initShareConfig    // 分享配置(含违禁词校验)
} from '@/uni_modules/unirisk-uni-sdk/utssdk'

错误码速查

错误码含义
1001隐私协议未同意
2001黑名单拦截
2002操作冷却中
2003超出次数限制
3001本地敏感词命中
3002微信内容安全拦截
4001广告全局关闭
4002广告频次限制

接入多快?核心代码 3 行

import { initLicense, getDeviceFinger, checkLocalRisk } from '@/uni_modules/unirisk-uni-sdk/utssdk'

initLicense({ appid: '__UNI__XXXXX', backendUrl: 'https://your-domain.com' })
const finger = getDeviceFinger()
const result = checkLocalRisk('submit')

本地防刷示例:

const result = checkLocalRisk('submit', null)
if (!result.pass) {
  if (result.needVerify) {
    // 弹出人机验证码
  } else {
    uni.showToast({ title: result.reason, icon: 'none' })
  }
}

5 套 easycom UI 组件,开箱即用

配置 pages.json 后无需手动 import,模板直接使用:

<privacy-dialog @agree="onAgree" @disagree="onDisagree" />  <!-- 隐私弹窗 -->
<risk-share>分享给朋友</risk-share>                          <!-- 合规分享 -->
<risk-verify @success="onVerifySuccess" />                  <!-- 人机验证 -->
<risk-tip msg="操作过于频繁,请稍后再试" />                   <!-- 风险提示 -->
<ad-controller><view>广告内容</view></ad-controller>          <!-- 广告管控 -->
  • privacy-dialog:SDK 初始化优先弹出,未同意前禁用全部风控接口
  • risk-share:仅响应手动 click,禁止自动唤起,无奖励/助力文案
  • risk-verify:Canvas 本地生成 4 位数字+字母验证码,支持最大重试次数
  • risk-tip:统一「防刷/风险拦截/访问限流」合规文案,自动倒计时关闭
  • ad-controller:全局开关 + 最小展示间隔 + 最大叠加层数

配套 PHP + MySQL 后端(不是只给前端代码)

  • 授权激活 & 校验
  • 风控规则配置 & 动态下发
  • 内容安全检测中转
  • 黑白名单管理
  • 风险日志查询 & CSV 导出
  • SDK 版本检查 & 通知

隐私合规 · 放心用

  • ✅ 不采集 IMEI、手机号、MAC 地址、定位、相册等敏感信息
  • ✅ 设备特征经 SHA-256 哈希,不可逆推原始数据
  • ✅ 隐私 FAQ + 合规声明文档齐全
  • ✅ 符合微信/支付宝/抖音等平台最新隐私规范

在线 Demo & 插件获取

插件地址:ext.dcloud.net.cn/plugin?id=2…


不买插件 → 自己开发 → 至少 2 周 → 踩坑无数

接入 UniRisk → 一个插件 → 今天接入 → 立即生效