uniapp如何开启短震动、触感反馈实现

2023-05-16

使用 uni-app 开发一款 app,需求中有一项是点击 触感反馈,查阅了 uni-app 相关文档,发现并没有对应的 api,最开始尝试用“震动”的方式来模拟“触感反馈” , 但是感觉效果并不好,因为在ios中并不支持短震动(15ms), 只支持长震动(400ms)。在这里记录一下最后的处理方式。

uniapp官网文档

在文档中只找到了uni.vibrateShort的方法,来开启短震动。对应安卓效果还行,代码如下:

uni.vibrateShort({
	success: ()=>{
		console.log('success');
	}
});

注意

  • iOS上只有长震动,没有短震动
  • iOS上需要手机设置“打开响铃时震动”或“静音时震动”,否则无法震动

IOS 开启触感反馈

iPhone 使用触感反馈需要手机支持并且在设置中打开,否则并不能触发。所以必须使用H5+的api方法,其核心代码如下:

let UIImpactFeedbackGenerator = plus.ios.importClass(
	'UIImpactFeedbackGenerator'
)
let impact = new UIImpactFeedbackGenerator()
impact.prepare()
impact.init(1)
impact.impactOccurred()

在需要在需要触感反馈的地方,把这段代码复制进去即可!

代码封装

针对安卓和ios不同的实现,最终实现公用代码如下:

onFeedTap() {
	let platform=uni.getSystemInfoSync().platform
	// #ifdef APP-PLUS
	if (platform == "ios") {
		let UIImpactFeedbackGenerator = plus.ios.importClass('UIImpactFeedbackGenerator');
		let impact = new UIImpactFeedbackGenerator();
		impact.prepare();
		impact.init(1);
		impact.impactOccurred();
	}
	if (platform == "android") {
		uni.vibrateShort();
	}
	// #endif
},

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

uniapp如何开启短震动、触感反馈实现 的相关文章

  • java两个字符串的删除操作(动态规划)

    两个字符串的删除操作 给定两个单词 word1 和 word2 xff0c 找到使得 word1 和 word2 相同所需的最小步数 xff0c 每步可以删除任意一个字符串中的一个字符 xff08 力扣 xff09 示例 输入 sea ea
  • C/C++无向图的遍历(bfs和dfs)

    描述 简单介绍一下图 xff0c 图就是由一些小圆点 xff08 称为顶点 xff09 和连接这些小圆点的直线 xff08 称为边 xff09 组成的 例如下图的由五个顶点 xff08 编号1 2 3 4 5 xff09 和五条边 xff0
  • 树状数组c++/java版

    span class token keyword class span span class token class name Bit span span class token punctuation span span class to
  • 深度学习基础入门

    一 神经网络基础 线性函数 xff1a 从输入到输出的映射 损失函数 61 数据损失 43 正则化惩罚项 我们总是希望模型不要太复杂 xff0c 过拟合的模型是没用的 反向传播 加法门单元 xff1a 均等分配MAX门单元 xff1a 给最
  • 正则表达式匹配链接

    http tools jb51 net regex create reg
  • java选手算法竞赛模板

    span class token keyword import span span class token namespace java span class token punctuation span io span class tok
  • Mybatis框架文件模板

    jdbc properties mysql jdbc driver 61 com mysql jdbc Driver jdbc url 61 jdbc mysql 127 0 0 1 3306 mybatis characterEncodi
  • Mybatis单表 | 多表 | 动态sql 查询

    一 xff1a 单表增删改查xml 注 xff1a update不建议这么写sql 文章后有动态sql的写法 xff0c 用到了trim代替了set xff0c 注意ifnull的情况 单表的sql映射 xff0c 没什么好说的 二 xff
  • java版本的c++STL函数之next_permutation()

    相信很多java选手在打比赛的时候会出现手写全排列的时候实现不了字典序最小的下一个排列 xff0c 这里提供一个简简单单的板子 xff0c 欢迎使用 首先创建一个Permutaion的泛型类 span class token keyword
  • springboot定时任务处理(cron表达式)

    自动生成链接 https www bejson com othertools cron
  • List集合和int[]数组实现互转操作

    1 List转int list转int 时需要注意的是 xff0c list里存的是引用数据类型 xff0c 如果是Integer需要拆箱操作 xff0c 即mapToInt i gt i xff0c 不然的话直接toArray 的话jdk
  • docker 容器新建

    先查看ubuntu 镜像版本 xff1a a sudo docker search ubuntu 结果 xff1a wxsc 64 ubuntu usr include x86 64 linux gnu bits sudo docker s
  • APM/PX4将遥控器5通道之后的通道映射到舵机输出

    本文转自模友之吧 xff0c 感谢作者加加菲 xff0c 如有不当之处 xff0c 请联系删帖 xff08 环境 xff1a 飞控pixhawk 标准版 xff0c AC3 2 1固件 xff0c 社区版地面站 xff0c sbus接收机
  • 华为的鸿蒙系统引发嵌入式业界震动?

    笔者跟很多业内人士一样一直以为华为就是搞一个类似安卓的在高性能可移动设备上跑的操作系统 xff0c 没曾想华为甩出下面这张图 又是希望从RTOS到大型操作系统大小通吃 谷歌一开始没想做物联网的 xff0c 首先甩出的是大型操作系统 xff0
  • 王佩丰 Excel 基础24讲 | 学习笔记(全)

    第一讲 xff1a 认识Excel 1 简介 excel能做什么 xff1f 数据存储 数据处理 数据分析 数据呈现 excel界面 补充 xff1a Excel数据分析步骤 提出问题 xff1a 明确自己需要通过数据分析解决什么问题 理解
  • Envoy 中文指南系列:Envoy 介绍

    原文链接 xff1a https fuckcloudnative io envoy handbook docs overview overview 前言 Envoy 是专为大型现代 SOA xff08 面向服务架构 xff09 架构设计的
  • 树莓派最新64位系统安装Pytorch和OpenCV

    树莓派官方最新64位 xff08 aarch64 xff09 系统安装Pytorch和OpenCV 原文地址 一 设置镜像源 armv7l是armhf的衍生 xff0c 而在树莓派中armhf默认是指32位 xff08 我不确定这个说法对不
  • 畅玩树莓派4B(二)树莓派搭建无线路由器(支持5GWIFI)

    畅玩树莓派4B xff08 二 xff09 树莓派搭建无线路由器 xff08 支持5GWIFI xff09 一 工具安装二 网卡配置三 DHCP和DNS配置四 配置转发五 配置hostapd 树莓派4B拥有千兆有线网络和5G无线网络 因此本
  • 畅玩树莓派4B(一)树莓派系统安装和SSH连接

    畅玩树莓派4B xff08 一 xff09 树莓派系统安装和SSH连接 一 前言二 系统和工具下载三 系统烧录四 开启SSH五 扫描树莓派IP 连接 一 前言 树莓派4B拥有非常强大的功能 可以配置无线路由器 小型NAS Windows的K
  • OpenDaylight简介和安装

    目录 摘要 OpenDaylight简介 环境 下载 安装 OpenDaylight dlux的安装和启动 总结 参考文档 摘要 SDN是一种新的网络体系结构 xff0c 使用开放的协议提供集中 可编程的控制和网络设备监控 SDN的核心理念

随机推荐

  • jni开发中 接口为什么要冠extern "C"呢

    android studio jni开发默认是C 43 43 语言的 而且还都是静态注册 C 43 43 为了支持函数重载 xff0c 函数在被C 43 43 编译后在符号库中的名字与C语言的不同 假如某个函数的原型为void f int
  • JS 中的类数组对象如何转换为数组?

    类数组对象是什么 xff1f 类数组对象 xff0c 就是含有 length 属性的对象 xff0c 但这个对象不是数组 通常来说还会有 0 xff5e length 1 的属性 xff0c 结构表现上非常像一个数组 const arrli
  • js实现文字跑马灯效果

    lt doctype html gt lt html gt lt head gt lt meta charset 61 34 UTF 8 34 gt lt meta name 61 34 viewport 34 content 61 34
  • vue 有滚动条 点击拖拽滑动自定义指令

    lt div class 61 34 wrap 34 v flowDrag gt directives flowDrag bind el binding vnode oldNode if binding return el onmoused
  • 微信小程序相互跳转如何携带参数

    wx navigateToMiniProgram 要跳转的小程序的appid appId 39 wx1b125bf4cf709150 39 跳转的目标页面 xff0c 参数可以在另外一个小程序的onLoad中通过options接收 path
  • js删除字符串最后一个字符方法总汇

    需求 xff1a 去掉js字符串末尾的标点符号 比如原字符串 xff1a csdn net 目标字符串 xff1a csdn net 解决方案 xff1a 方法一 xff1a str slice 0 str length 1 方法二 xff
  • Google Analytics | 学习笔记

    一 简介 1 什么是GA xff1f 是谷歌开发的一款分析网页流量的工具 xff0c 可以帮助网站解决数据分析与统计的问题 xff0c 并且将这些数据可视化展现报告出来 xff0c 帮助网站商家更好的分析受众 xff0c 流量等 xff0c
  • vscode 新版解决冲突界面 改回老版

    很多更新了vscode小伙伴发现新版的解决冲突界面很不适应 xff0c 无从下手 xff0c 只需要加一个东西就可以改回老版的样式 在setting json 里添加 34 git mergeEditor 34 false
  • vue3中defineComponent 的作用

    VUE3中 xff0c 新增了 defineComponent xff0c 它并没有实现任何的逻辑 xff0c 只是把接收的 Object 直接返回 xff0c 它的存在是完全让传入的整个对象获得对应的类型 xff0c 它的存在就是完全为了
  • js打印去除浏览器的默认的页眉页脚

    去除打印的页眉页脚 try var hkeyKey var hkeyRoot 61 34 HKEY CURRENT USER 34 var hkehkeyPath 61 34 Software Microsoft Internet Expl
  • 微信小程序如何判断是否已经订阅某条消息

    判断订阅消息是否已经订阅 res subscriptionsSetting itemSettings 返回的是所有订阅消息的对象集合 xff0c 39 accept 39 表示用户同意订阅这条消息 xff0c 39 reject 39 表示
  • js根据当前时间获取当月的1号和最后一号

    js根据当前时间获取当月的1号和最后一号 function getcurentMonth cdate cdate传来的当前的时间 当天 let thatDay 61 34 34 当月第一天 let oneDayTime 61 34 34 当
  • js判断文件上传的类型

    js判断文件上传的类型 64 param fileName 文件名称 64 param 数据返回 1 无后缀匹配 false 64 param 数据返回 2 匹配图片 image 64 param 数据返回 3 匹配 txt txt 64
  • js数据流文件下载

    js数据流文件下载 64 param fileType 文件类型 64 param fileName 文件名称 64 param data 数据流文件 function download fileType bucketName data l
  • vscode 全局搜索时屏蔽node_modules和dist 目录

    打开设置 setting json 在里面添加屏蔽的文件目录即可 快捷打开 方式 ctrl 43 p 搜索 setting json 34 search exclude 34 34 dist 34 true 34 node modules
  • NVM 安装及注意事项

    1 下载 nvm Releases coreybutler nvm windows GitHub win10 下载 nvm setup zip 版本 解压并安装 不要修改默认安装路径 会自动写入系统环境变量 控制台 nvm v 查看是否安装
  • eslint 配置项大全 含中文注释

    34 rules 34 定义对象的set存取器属性时 xff0c 强制定义get 34 accessor pairs 34 2 指定数组的元素之间要以空格隔开 后面 xff0c never参数 xff1a 之前和 之后不能带空格 xff0c
  • Linux 路由配置 route命令 /etc/sysconfig/static-routes

    一 临时添加路由 重启network服务失效 方法一 route命令 frags为路由标志 xff0c 标记当前网络节点的状态 add 增加路由 U Up表示此路由当前为启动状态 del 删除路由 H Host xff0c 表示此网关为一主
  • js生成1到100的数组方法

    生成1到100的数组的一种方法是使用JavaScript的Array from 方法 例如 xff0c 下面的将生成1到100的数组 xff1a const numbers 61 Array from Array 100 keys n 61
  • uniapp如何开启短震动、触感反馈实现

    使用 uni app 开发一款 app xff0c 需求中有一项是点击 触感反馈 xff0c 查阅了 uni app 相关文档 xff0c 发现并没有对应的 api xff0c 最开始尝试用 震动 的方式来模拟 触感反馈 但是感觉效果并不好