Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何以编程方式启用和禁用振动模式

如何以编程方式启用和禁用振动模式
EN

Stack Overflow用户
提问于 2015-03-23 02:50:44
回答 4查看 14.7K关注 0票数 5

我需要启用和禁用移动模式时,用户关闭和打开开关按钮。

我已经尝试了下面的代码,但它不起作用:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
AudioManager myAudioManager;
myAudioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);

Toast.makeText(this, "in setting "+(myAudioManager.getMode()==AudioManager.RINGER_MODE_VIBRATE),1).show();

if(myAudioManager.getMode()==AudioManager.RINGER_MODE_VIBRATE) {
    //myAudioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
    myAudioManager.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER, AudioManager.VIBRATE_SETTING_OFF);
}
else
{
    //myAudioManager.setRingerMode(AudioManager.RINGER_MODE_VIBRATE);
    myAudioManager.setVibrateSetting(AudioManager.VIBRATE_TYPE_RINGER, AudioManager.VIBRATE_SETTING_ON);
}
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2015-03-26 00:10:56

我们可以通过使用AudioManager以编程方式启用和禁用静默模式:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 AudioManager audioManager = (AudioManager) getSystemService(AUDIO_SERVICE);

用于设置静默模式:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT);

对于正常模式:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
audioManager.setRingerMode(AudioManager.RINGER_MODE_NORMAL);
票数 7
EN

Stack Overflow用户

发布于 2015-03-23 03:12:02

首先,在AndroidManifest.xml中使用此权限

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<uses-permission android:name="android.permission.VIBRATE"/>

现在

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public void startVibrate(View v) {
  long pattern[] = { 0, 100, 200, 300, 400 };
  vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
  vibrator.vibrate(pattern, 0);
 }

  public void stopVibrate(View v) {
  vibrator.cancel();
 }

振动模式公共抽象空洞振动(long[]模式,整数重复)振动模式只是一个持续时间阵列的开关振动器,以毫秒为单位。第一个值表示在打开振子之前等待的毫秒数。下一个值表示在关闭振子之前保持振动器工作的毫秒数。随后的值,在ON和OFF之间交替。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
long pattern[]={0,100,200,300,400};

如果你觉得没有重复,只需通过-1的‘重复’。要重复模式,只需从您想要开始的位置传递索引即可。我想从0‘开始,因此我将0传递给’重复‘。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
vibrator.vibrate(pattern, 0);
票数 5
EN

Stack Overflow用户

发布于 2017-09-20 05:01:34

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 myAudioManager.setVibrateSetting();

API级别16中不推荐此方法。

你可以用这个:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
audioManager.setRingerMode(AudioManager.RINGER_MODE_SILENT)

RINGER_MODE_SILENT :会使音量变小,不会震动。

RINGER_MODE_VIBRATE:将静音和振动。

RINGER_MODE_NORMAL:将是可听到的,并可根据用户的设置振动。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29208366

复制
相关文章
eval解析json字符串
场景:在springMVC,手动拼接的list,转成本json字符串后,传到前台,
河岸飞流
2019/09/11
1.1K0
JSON.parse()与eval()的区别
JSON.parse与eval和能将一个字符串解析成一个JSON对象,但还是有挺大区别。
JaneYork
2023/10/11
2700
CompletableFuture真香,可以替代CountDownLatch!
Future相当于一个占位符,代表一个操作将来的结果。一般通过get可以直接阻塞得到结果,或者让它异步执行然后通过callback回调结果。
xjjdog
2021/09/17
1.5K0
fencedframe 可以替代 iframe 吗?
今天继续聊 浏览器策略 ,这是我 「浏览器策略解读」 专栏的第 35 篇文章了,感谢读者们一如既往的支持!
ConardLi
2022/05/23
2.3K0
fencedframe 可以替代 iframe 吗?
Linux Lite 5.4 可以在您的 PC 上替代 Windows 10
原文:https://www.linuxmi.com/linux-lite-5-4.html
逆锋起笔
2021/04/26
3K0
Linux Lite 5.4 可以在您的 PC 上替代 Windows 10
JSON必知必会阅读
阅读了一下JSON必知必会,由于日常使用JSON比较多,所以文中内容大部分都已经接触过了,大概通读全书耗时1h左右 PDF地址:链接:https://pan.baidu.com/s/1iZQLR1zGJbH9Eoq3t_GYFQ 密码:x4lv
zx钟
2020/02/25
8020
eval在python中是什么意思_如何在Python中使用eval ?
在Python中,我们有许多内置方法,这些方法对于使Python成为所有人的便捷语言至关重要,而eval是其中一种。eval函数的语法如下:
全栈程序员站长
2022/11/17
3.4K0
使用httpstat替代curl,结果更易于阅读
可以看到httpstat 自动把访问的结果存到/tmp/下的临时文件了,并且给出了每个阶段的耗时情况。
保持热爱奔赴山海
2023/09/23
2950
ArrayList 可以完全替代数组吗?
在前面的文章里,我们学习了很多数据结构与算法思想。在实际的业务开发中,往往不需要我们手写数据结构,而是直接使用标准库的数据结构 / 容器类。
用户9995743
2022/12/22
7520
ArrayList 可以完全替代数组吗?
在模版类里使用自己时可以省略模版参数
用户10551528
2023/10/18
1200
在模版类里使用自己时可以省略模版参数
javascript:巧用eval函数组装表单输入项为json对象
在ajax方式做web开发时,经常会遇到会保存前,收集表单输入项,组成json对象,然后把对象直接post到服务端的场景 常规做法是在js里写类似如下的代码: var myObj = {}; myObj.x = document.getElementById("x").value; myObj.y = document.getElementById("y").value; //... //然后ajax post或get提交 表单元素不多的时候,这样还好,但是如果一个表单有好几十项甚至
菩提树下的杨过
2018/01/24
1.5K0
程序员在大数据面试时的争议:Spark能替代Hive?
本文作者:曾就职传统通讯运营商,负责BI项目的开发;目前转型互联网公司,就职于某厂负责相关的大数据仓库建设工作。
养码场
2018/10/18
1K0
程序员在大数据面试时的争议:Spark能替代Hive?
nodejs写入json文件_json文件可以删除吗
哈喽!nodejs的文件系统,接触过node的对node的文件系统肯定不会陌生,这两天我就在思考一个问题,我是否可以在本地操作我的本地json文件,这样一个本地的文本数据库就有了,如果是便签之类,记录的软件,我完全可以不用连后台的数据库,我可以自己操作本地的json文件,自己用node写后台,答案是肯定的,下面我们就一起来实现一下吧,对本地json文件的增、删、改、查
全栈程序员站长
2022/11/04
2.9K0
nodejs写入json文件_json文件可以删除吗
golang源码阅读:test2json
go test加参数-json就能输出 json格式,下面我们用一个简单的例子看下对他进行分析,然后分析下相关源码。对于单测
golangLeetcode
2023/09/06
1780
golang源码阅读:test2json
12个可以替代jenkins的CI/CD工具
Jenkins是一个开源的持续集成平台,是DevOps生命周期中的一个重要工具。但是,与当前的用户界面趋势相比,它的界面已经过时,用户界面也不够友好(苦叶子推荐你用script pipeline: Jenkins之jenkinsfile基础)。此外,Jenkin配置可能比较复杂,而且它还有许多其他缺点。
苦叶子
2020/02/25
12.1K0
12个可以替代jenkins的CI/CD工具
linux eval
eval 就是执行以下两个步骤 1.第一次,执行变量替换,类似与C语言的宏替代
雪影
2018/08/02
9090
电子阅读out,VR/AR带你走进阅读3.0时代
近日,南非一家公司启动了一项名为Kickstarer的计划,其目标是在AR技术的支持下生产一系列儿童书籍。该系列的第一本书已经开始制作,内容灵感则源自经典读物《格林童话》。该书讲述了Hansel和Gr
VRPinea
2018/05/16
7810
Python - eval()
eval 的作用域就是 g 指定的这个字典,外面的 x = 10 被屏蔽掉了,eval 是看不见的,所以使用了 x 为 5 的值
小菠萝测试笔记
2021/09/14
9030
一些原生写法可以替代Jquery方法
jQuery的核心是通过各种选择器,选中DOM元素,可以用querySelectorAll方法模拟这个功能。
javascript.shop
2019/09/04
2.1K0
Fastjson解析JSON时乱序解决
默认解析json字符串时序列化是无序的,而有些场景下需要按前台传过来的顺序 解析时传入参数Feature.OrderedField可保持有序 JSONObject jsonObject = JSONObject.parseObject(jsonData, Feature.OrderedField); List<LinkedHashMap> templateMap = JSON.parseArray(jsonObject.getString("jsonValue"), LinkedHashMap.class
4xx.me
2022/06/09
1.4K0

相似问题

无法获取Swift存储桶中的文件/对象列表;iOS - S3

164

iOS: UITableViewCell在Swift中的垃圾桶删除按钮

17

从s3桶中删除文件

64

从S3桶中删除空文件

22

删除S3中的桶

32
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文