2

环境。 我想让我的手机在点击按钮时振动。我使用SO 问题的代码:如何使 Android 设备振动?.

让手机振动的代码:

@Override
public void onClick (View view)
{
    Vibrator vibrator = (Vibrator) MyActivity.this.getSystemService (Context.VIBRATOR_SERVICE);

    if (vibrator.hasVibrator()) {
        Log.v ("Can Vibrate", "YES");
    } else {
        Log.v("Can Vibrate", "NO");
    }
        vibrator.vibrate (1000);
    }

我还添加了权限

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

到清单文件。

问题。 单击按钮时手机根本不会振动。我手机上的其他应用程序使手机振动。

记录消息。

xxxx V/Can Vibrate﹕ YES
xxxx V/Vibrator﹕ Called vibrate(long) API - PUID: 10060, PackageName: de.creamin.vibratetest
xxxx V/Vibrator﹕ vibrate - PUID: 10060, PackageName: de.creamin.vibratetest, ms: 1000, mag: -1

电话。 三星 Galaxy S3 (GT-I9300),安卓 4.3

问题。这里发生了什么?我是否必须以某种方式配置我的手机才能接受振动代码?

4

2 回答 2

4

我发现为什么我的手机不振动了。在菜单项下

phone settings > My device > Sound > Vibration intensity

您可以调整 和 的振动Incoming call强度。的设置已设置为零。因此,我的手机没有振动。将该滑块设置为大于零的值后,我的手机会在单击应用程序中的按钮时振动。NotificationHaptic feedbackNotification

于 2014-11-08T12:28:18.863 回答
1

无需通过 MyActivity.this 可能。尝试:

Vibrator vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE)
于 2014-11-07T20:08:53.750 回答