【问题标题】:android Phone Vibration doesn't stop using cancel methodandroid手机振动不会停止使用取消方法
【发布时间】:2010-07-10 11:41:36
【问题描述】:

我编写了一些代码,可以在接到来电时将电话静音。 当手机处于振动模式时,我使用以下代码停止手机振动:

Vibrator vib = (Vibrator) context.getSystemService(Context.VIBRATOR_SERVICE);
vib.cancel();

虽然它在我的装有 android 2.1 的 Nexus One 上工作,但它似乎并不能阻止装有 android 2.1 的 HTC Desire 手机的振动。 有人遇到过这个问题吗?

多伦

【问题讨论】:

    标签: android vibration


    【解决方案1】:

    这是 Android 的缺点之一,不同的设备表现不同。您是否尝试过使用vibrate(3000); 相当于让设备振动3 秒,试图取消已启动的服务?

    【讨论】:

    • 那么当我们实现“Pattern-Vibrate”比如 long[] pattern = {0L,100L,250L,1000L,250L,500L} 时呢?振动器.振动(模式,2);所以“取消”应该在那里停止振动
    • 我同意,但如果 cancel() 在 HTC Desire 上不起作用 - 那你还能做什么?还发现这个问题对设备来说并不新鲜:forum.xda-developers.com/showthread.php?t=661702
    • 本尼,谢谢你的回答。我需要手机在来电时停止振动。让它振动 3 秒对我有什么帮助?
    【解决方案2】:

    似乎振动没有停止,因为附加到来电广播接收器的停止振动代码在某些情况下在振动开始之前执行,因此似乎振动没有停止。

    我的解决方案是检查手机是否振动,如果是则关闭振动,否则将振动模式设置为关闭以防止振动开始。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-07
      • 2012-02-10
      • 1970-01-01
      • 1970-01-01
      • 2020-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多