如何获取Android设备的默认振动模式?

5

我正在为Android API 23创建一个应用程序,我想获取在手机响铃时使用的默认振动模式?

目前我的代码如下:

Vibrator vibrator = (Vibrator)getSystemService(Context.VIBRATOR_SERVICE);
long[] pattern = {0, 500, 1000}; // default pattern goes here
vibrator.vibrate(pattern, 0);

我该如何获取默认图案?

2个回答

15

默认的振动模式可以在以下类中找到:com/android/server/notification/NotificationManagerService.java

static final long[] DEFAULT_VIBRATE_PATTERN = {0, 250, 250, 250};

这里查看源代码。

很不幸,到目前为止还没有公共API可以获取此默认模式。


5
据我所知,手机默认的振动模式是 a。
{ delay, vibrate, sleep, vibrate, sleep } pattern

在处理您的代码时
long[] pattern = new long[] { 1000, 1000, 1000, 1000, 1000 };

现在振动被设置为1000毫秒的延迟。如果你将第一个设置为0,它将立即触发。


我想通过编程获取它,有没有什么API可以做到这一点? - zola
2
我知道这并没有回答问题,但感谢您解释模式值背后的含义。那帮助了我解决另一个问题! - Nikos Hidalgo
感谢您解释这个模式。 - dragondx

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接