当前位置: 首页 > news >正文

石家庄seo公司关键词排名优化软件

石家庄seo公司,关键词排名优化软件,现货黄金看盘软件,洛可可设计公司考察最近使用uniapp开发震动功能,发现uniapp提供的 uni.vibrateLong()的方法震动比较弱,而且不支持息屏和后台震动。plus.ios.importClass("UIImpactFeedbackGenerator")是在网上看到的,这个震动也比较弱,ios也不支持息屏和…

最近使用uniapp开发震动功能,发现uniapp提供的 uni.vibrateLong()的方法震动比较弱,而且不支持息屏和后台震动。plus.ios.importClass("UIImpactFeedbackGenerator")是在网上看到的,这个震动也比较弱,ios也不支持息屏和后台震动。

这种方式不支持后台/息屏震动,屏幕一关闭或者软件退到桌面就会停止震动,而且震动也比较弱:

// 震动
let vibrateTimer = null;
const palyVibration = (interval = 1000) => {// 先停止可能存在的震动stopVibration();let platform = uni.getSystemInfoSync().platform;if (platform === "ios") {// iOS循环震动const doVibrate = () => {let UIImpactFeedbackGenerator = plus.ios.importClass("UIImpactFeedbackGenerator");let impact = new UIImpactFeedbackGenerator();impact.prepare();impact.init(1);impact.impactOccurred();};// 立即执行一次doVibrate();// 设置定时器循环执行vibrateTimer = setInterval(doVibrate, interval);}// Android循环震动if (platform === "android") {vibrateTimer = setInterval(() => {uni.vibrateLong();}, interval);}
}

上面的代码不支持后台/息屏震动(屏幕一但关闭或者软件退到桌面就会停止震动),而且震动也比较弱

最好的解决震动方法,代码如下:

uniapp 安卓和ios震动方法,支持息屏和后台震动,即使软件在退出桌面也能正常震动,安卓和ios均测试正常可用。

//震动
let platform = uni.getSystemInfoSync().platform;
let vibrateTimer = null;
const vibrate = (pattern = [0, 1500, 1000, 1500], type = 0) => {cancelVibrate();  // 先停止可能存在的震动try {if (platform === "ios") {plus.device.vibrate(pattern);const doVibrate = () => plus.device.vibrate(); // 循环执行震动doVibrate();  // 立即执行一次vibrateTimer = setInterval(doVibrate, 1000);  // 设置定时器循环执行} else {console.log('震动频率', pattern)var Build = plus.android.importClass("android.os.Build");if (Build.VERSION.SDK_INT >= 26) {var Context = plus.android.importClass("android.content.Context");var main = plus.android.runtimeMainActivity();var vibrateService = main.getSystemService(Context.VIBRATOR_SERVICE);var AudioAttributes = plus.android.importClass("android.media.AudioAttributes");var audioAttributesBuilder = new AudioAttributes.Builder();plus.android.invoke(audioAttributesBuilder, 'setContentType', AudioAttributes.CONTENT_TYPE_SONIFICATION);plus.android.invoke(audioAttributesBuilder, 'setUsage', AudioAttributes.USAGE_ALARM);var audioAttributes = plus.android.invoke(audioAttributesBuilder, 'build');// plus.android.invoke(vibrateService, 'vibrate', [0,1000], 0, audioAttributes);// plus.android.invoke(vibrateService, 'vibrate', [0,1500,1000,1500], 0, audioAttributes);plus.android.invoke(vibrateService, 'vibrate', pattern, type, audioAttributes);} else {// Android 低版本使用 plus.device.vibrate,无法实现自定义模式vibrateTimer = setInterval(() => plus.device.vibrate(), 1000);}}} catch (e) {console.log(JOSN.stringify(e));}
}//取消震动
const cancelVibrate = () => {if (vibrateTimer) {clearInterval(vibrateTimer);vibrateTimer = null;}if (platform === 'android') {var Build = plus.android.importClass("android.os.Build");if (Build.VERSION.SDK_INT >= 26) {var vib = plus.android.runtimeMainActivity().getSystemService("vibrator");plus.android.invoke(vib, "cancel");}}}

如果感兴趣,可以到我个人博客网站,查看更多教程:Yun博客

http://www.skylitedrivein.com/news/294.html

相关文章:

  • 思明区建设局官网站韩国电视剧
  • 我想去澳大利亚做按摩找哪个网站武汉关键词seo排名
  • 无锡做网站 选众诺2024年新冠疫情最新消息今天
  • 免费网站制作手机软件的appseo推广优化方案
  • 抚州城乡建设厅网站河南靠谱seo电话
  • 怎么在电脑上自己做网站吗长春seo整站优化
  • 沭阳各乡镇做网站百度客服怎么转人工电话
  • 网站紧急升级维护中谷歌 chrome 浏览器
  • 大连做网站 选领超科技谷歌seo和百度seo
  • 洪梅镇网站仿做宁波最好的推广平台
  • 公司网站高端产品销售方案与营销策略
  • 网站静态路径lol关键词查询
  • 怎样建移动网站职业技能培训机构
  • 商务定制网站网上销售
  • 网络规划设计师历年试题分析与解答网站推广优化排名教程
  • 网站备案各种问题汇总站长号
  • 自住房车各项建设部网站长沙百度网站排名优化
  • 兰州做网站的公司有哪些网址seo查询
  • 长春阿凡达网站建设seo服务是什么意思
  • 网站首页页面seo店铺描述
  • 温州网站域名注册服务公司网站优化检测
  • 有模板怎么做网站济南网站优化公司排名
  • 如何制作简单自己的网页盐城网站优化
  • 做一件代发的网站在线优化工具
  • 网站加app建设每日一则小新闻
  • 网站显示数据百度平台客服
  • 高端品牌网站设计公司价格百度营销推广登录平台
  • 深圳做手机网站建设郑州网站推广哪家专业
  • notepad wordpress重庆seo排名优化
  • 开发区招聘网最新招聘seo关键词快速排名软件