2010-02-19 53 views
1

所以我试图模拟手机正在接收呼叫。我已经成功地提取了电话铃声并播放了它。现在我想模拟振动。虽然我可以让手机振动,但我想模仿手机在收到来电时的震动模式。是否有一些设置或课程可用于提取此图案,并检测是否打开振动?仿真接收呼叫时的振动

回答

4

你必须给它一个模式振动。

Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); 

// 1. Vibrate for 1000 milliseconds 
long milliseconds = 1000; 
v.vibrate(milliseconds); 

// 2. Vibrate in a Pattern with 500ms on, 500ms off for 5 times 
long[] pattern = { 500, 300 }; 
v.vibrate(pattern, 5); 

http://www.androidsnippets.org/snippets/22/

我不知道是什么图案用作标准,你也许可以找到它的源头,否则保持自己尝试不同的图案,直到它是令人满意的。

+0

您的代码完美无瑕,谢谢! – pcm2a

+0

谢谢,第一个电话很棒。但我认为API可能已经改变为#2。第二个参数是模式数组的索引,所以5不起作用。你可以在这里看看这个方法的描述:http://developer.android.com/reference/android/os/Vibrator.html – Gromix

+0

我没有看到它发生了什么变化?第二个参数是一个int,它定义了模式应该重复的次数,所以5应该是有效的。 –

相关问题