您的位置:首页 > 其它

如何关闭notification的震动

2016-08-01 17:06 92 查看
由于要做一个前台服务,就需要调用startForeground函数,其中要传入一个notification对象,但是默认的notification会有震动,这样的话,每次我服务启动时就会产生震动,会很糟糕,找了很久国内帖子,没找到解决方案,谷歌了一下,迎刃而解,参考网址:http://stackoverflow.com/questions/24008764/disable-vibration-for-a-notification

网上的许多例子都会采用下面这行代码:

.setDefaults(Notification.DEFAULT_ALL)

这样无论你怎么设置vibrate都无济于事,因为他设置了所有值为默认,这时候我们需要把它修改为

setDefaults(Notification.DEFAULT_LIGHT | Notification.DEFAULT_SOUND)

ps:如果没有DEFAULT_LIGHT为未定义状态,就删掉就好了

然后设置vibrate:

.setVibrate(new long[]{0l});


网上很多文章都说设置vibrate为null即可,原文作者表示并不行,必须这么设置。

最后别忘了加上权限:

<uses-permission android:name="android.permission.VIBRATE" />

测试android sdk 为16,测试通过。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  notification 震动 关闭