uniapp android端和ios端铃声静音,但是还是会震动
uniapp 使用了html5plus的api,可以实现调用原生的api功能,htm5plus官方api文档:
var pf = uni.getSystemInfoSync().platform;
if (pf == "android")
{
let AudioManager = plus.android.importClass('android.media.AudioManager');
let main = plus.android.runtimeMainActivity();
let Context = plus.android.importClass('android.content.Context');
this.audioManager = main.getSystemService(Context.AUDIO_SERVICE); //let audioManager =
if (this.audioManager == null)
{ return;
}
console.log(AudioManager.STREAM_RING); this.audioManager.setStreamVolume(AudioManager.STREAM_RING, 0, AudioManager.FLAG_PLAY_SOUND | AudioManager.FLAG_SHOW_UI);
}
给不知道的人一点线索。ios端的代码,只能把铃声变小,无法静音。如下:
console.log("ios");
let AVSystemController = plus.ios.importClass("AVSystemController")
if (AVSystemController == null)
{
console.log("AVSystemController is null");
return;
}
var ac2 = AVSystemController.sharedAVSystemController();
if (ac2 == null)
{
console.log("ac2 is null");
return;
}
//ac2.setVolumeTo(0,"Ringtone");
var result = plus.ios.invoke(ac2, "setVolumeTo:forCategory:", 0.0, "Ringtone");
console.log("setVolumeTo", result);// 以上,打印true表示成功。
//下面是补救措施,未实验,因为到这iphone13就打印true,及执行成功了。
if (this.common.isNull(result))
{
console.log("plus.device.setVolume(0.2);");
plus.device.setVolume(0.2);
let MPMusicPlayerController = plus.ios.importClass("MPMusicPlayerController");
if (AVSystemController == null)
{
console.log("MPMusicPlayerController is null");
return;
}
var media = MPMusicPlayerController.applicationMusicPlayer();
if (media == null)
{
console.log("media is null");
return;
}
var result = plus.ios.invoke(media, "setVolume:", 0.7, );
console.log("result", result);
}
uni.showToast(
{
title: '已为您看起免打扰模式',
duration: 1000,
icon: 'none',
mask: false
})
uniapp android端和ios端铃声静音,但是还是会震动的更多相关文章
- 多种方式判断PC端,IOS端,移动端
1. 通过判断浏览器的userAgent,用正则来判断手机是否是IOS(苹果)和Android(安卓)客户端. var u = navigator.userAgent; var isAndroid = ...
- Swift3.0服务端开发(一) 完整示例概述及Perfect环境搭建与配置(服务端+iOS端)
本篇博客算是一个开头,接下来会持续更新使用Swift3.0开发服务端相关的博客.当然,我们使用目前使用Swift开发服务端较为成熟的框架Perfect来实现.Perfect框架是加拿大一个创业团队开发 ...
- Unity导出的Xcode项目,iOS端管理摄像头的方法
Vuforia导出的工程中管理摄像头问题 在以前的篇幅中提到了unity端和iOS端的动态交互.现在出现了一个问题.因为设备上的摄像机是实例化过来的.并且是一个单例.unity虽然已经不再显示了.但是 ...
- 关于Web端即JS端编程
主要的技术是 HTML/JS/CSS/XML Web就是JS/DOM编程. 页面的数据来源: XML, JSON, HTML, Text, 第三方页面或者数据. 不一定都要跟服务器进行交互. JS端 ...
- JS判断android ios系统 PC端和移动端
最近公司上线移动端,需要根据不同的系统跳转到不同的产品页面,百度后发现这一段代码很好用,不但可以判断当前是什么系统,还能知道当前浏览器是什么内核,移动端PC端都已测试无问题! var browser ...
- Ionic3学习笔记(八)使iOS端、Android端 Navbar 透明化
本文为原创文章,转载请标明出处 若要使iOS端 Navbar 透明,只需要给 ion-navbar 添加 transparent 属性,但是Android端依旧会有一条border在,所以再给 ion ...
- 登录界面 Android简单http get请求(含server端)五 iOS端(特别篇)
</pre><pre name="code" class="objc">NSDictionary *dict=@{@"user ...
- 微信小程序在Android和Ios端的获取时间兼容性问题
an端 var time = new Date() 例如:2020-01-01 01:01:00 ios端 var time = new Date() 例如:2020/01/01 01:01:00 ...
- 网页背景H5视频自动播放---PC端、移动端兼容问题完美解决方案(IOS、安卓、微信端)
最近公司官网需要使用视频当做banner背景且自动播放,并且因为是官网需要做到PC端和移动端都可以适配兼容,这些问题很是头疼: 兵来将挡,水来土掩,进过查阅相关技术资料,现已完美兼容PC端和移动端.下 ...
- Phonegap 之 iOS银联在线支付(js调用ios端银联支付控件)
Phonegap项目,做支付的时候,当把网站打包到ios或android端成app后,在app上通过wap调用银联在线存在一个问题: 就是当从银联支付成功后,再从服务器返回到app客户端就很难实现. ...
随机推荐
- 《苏丹的复仇》携手华为HMS生态,实现用户、收入双增长
中国出海中东和北非地区的策略类手游<苏丹的复仇>(Revenge of Sultans,ROS)和华为HMS生态深度合作,为本地用户带来创新游戏体验,成为当地广受欢迎的游戏之一,下载量居应 ...
- 如何用 Prometheus Operator 监控 K8s 集群外服务?
前言 前面系列文章中: Prometheus Operator 与 kube-prometheus 之一 - 简介 - 东风微鸣技术博客 (ewhisper.cn) 监控 Kubernetes 集群证 ...
- 重新点亮linux 命令树————内存与文件系统的查看[二十七]
前言 简单介绍一下内存的查看. 正文 常用命令. free top 查看磁盘使用率: fdisk df du du和ls的区别 free -h 查看内存使用率: free -g 显示按G来显示,-m用 ...
- locust分布式压测的Step Load及no web模式下的报表自动生成
Running Locust in Step Load ModeIf you want to monitor your service performance with different user ...
- 元素类型 “item” 相关联的 “name” 属性值不能包含 ‘<’ 字符
Android构建时报错: app:lintVitalRelease[Fatal Error] :3:214: 与元素类型 "item" 相关联的 "name" ...
- Vue——自动切换图片
利用属性指令 + setInterval(是一个实现定时调用的函数) <!DOCTYPE html> <html lang="en"> <head&g ...
- ModelScope初探:一行代码调用成熟AI模型
简介: 如何用一行代码调用成熟AI模型?试试ModelScope,让AI开发者解放生产力! ModelScope是阿里推出的下一代开源的模型即服务共享平台,为泛AI开发者提供灵活.易用.低成本的一站式 ...
- SRE技术保障平台-盯屏中心TAC: 混合云一站式告警运维平台
简介: SRE技术保障平台-盯屏中心TAC: 混合云一站式告警运维平台 1.目标定位 1.1背景 告警管控平台种类繁多 告警出现后未及时发现处理最终导致故障产生 专有云监控能力拉起依赖版本升级,操作复 ...
- 自己动手写符合自己业务需求的eslint规则
简介:eslint是构建在AST Parser基础上的规则扫描器,缺省情况下使用espree作为AST解析器.rules写好对于AST事件的回调,linter处理源代码之后会根据相应的事件来回调ru ...
- embedding models 是什么
embedding models 是一类机器学习模型,它们的核心功能是将高维.离散的输入数据(如词汇.类别标签.节点或实体)映射到低维.连续的向量空间中. 这些向量(即 embeddings)通常具有 ...