如何获取系统振动数据android?

时间:2015-07-28 13:51:04

标签: android android-vibration

是否可以将系统振动模式作为long[]数组?例如,在偏好SMS振动信号中选择的标准SMS振动模式或电流。

1 个答案:

答案 0 :(得分:0)

我认为不可能将当前设备的默认模式作为long[]数组。您可能需要对此进行试错法。并在您的代码上设置一堆if,以根据设备或手机品牌选择不同的振动模式。

类似的东西:

<强> YourActivity.java

import android.os.Vibrator;

private long[] patt;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    String man = android.os.Build.MANUFACTURER; 

    if (man.equals("SAMSUNG")) {
        patt = {0l,300l,50l,350l};
    }
    else {
        patt = {0l,200l,100l,100l};
    }

    vibrate(patt);
}

private void vibrate(long[] pattern) {
        Vibrator v = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);

        if (v.hasVibrator()) {
           v.vibrate(pattern,-1);
        }            
    }

不要忘记添加振动权限。

<强>的AndroidManifest.xml

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

有关android.os.Build信息,请参阅此link