更新记录

1.0.0(2026-11-11)

  • 首次发布
  • iOS:UIKit Impact / Selection / Notification 触感
  • Android:空实现,返回不支持,避免联编报错

平台兼容性

uni-app(5.33)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android iOS 鸿蒙
- √ × × √ - × √ ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × - - -

uni-app x(5.33)

Chrome Safari Android iOS 鸿蒙 微信小程序
× × × √ × ×

cportal-haptic

iOS UIKit 触感反馈 UTS 插件。调用系统 UIImpactFeedbackGenerator / UISelectionFeedbackGenerator / UINotificationFeedbackGenerator,无三方 SDK。

平台

平台 支持
App-iOS √
App-Android ×(空实现,返回不支持)
H5 / 小程序 ×

安装

  1. 从 插件市场 导入到项目 uni_modules/cportal-haptic
  2. 重新制作 自定义基座 后再在真机调试(UTS 原生能力必须打进基座)

使用

只能从插件根目录导入,不要引用内部文件:

// #ifdef APP-PLUS
import { playIosHaptic } from '@/uni_modules/cportal-haptic'
// #endif

const result = playIosHaptic('success')
// result.ok / result.api / result.message

kind 取值

kind API
light / medium / heavy UIImpactFeedbackGenerator
soft / rigid UIImpactFeedbackGenerator(需 iOS 13+)
selection UISelectionFeedbackGenerator
success / warning / error UINotificationFeedbackGenerator

建议封装

业务层自行做平台判断与去重,例如:

// #ifdef APP-PLUS
import { playIosHaptic } from '@/uni_modules/cportal-haptic'
// #endif

export function triggerSuccessHaptic() {
  // #ifdef APP-PLUS
  if (uni.getSystemInfoSync().platform === 'ios') {
    playIosHaptic('success')
  }
  // #endif
}

注意

  • Feedback Generator 必须在主线程触发,插件内部已切到主线程
  • 系统「触感反馈」关闭时,调用仍会成功返回,但设备可能无震感
  • 修改插件后需重新打自定义基座

隐私

不采集数据,无广告,无额外权限声明。

隐私、权限声明

1. 本插件需要申请的系统权限列表:

无额外权限;仅调用系统 UIKit Feedback Generator

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

无

暂无用户评论。