FileDocCategorySizeDatePackage
Vibrator.javaAPI DocAndroid 5.1 API6137Thu Mar 12 22:22:10 GMT 2015android.os

Vibrator

public abstract class Vibrator extends Object
Class that operates the vibrator on the device.

If your process exits, any vibration you started will stop.

To obtain an instance of the system vibrator, call {@link Context#getSystemService} with {@link Context#VIBRATOR_SERVICE} as the argument.

Fields Summary
private final String
mPackageName
Constructors Summary
public Vibrator()

hide
to prevent subclassing from outside of the framework

        mPackageName = ActivityThread.currentPackageName();
    
protected Vibrator(android.content.Context context)

hide
to prevent subclassing from outside of the framework

        mPackageName = context.getOpPackageName();
    
Methods Summary
public abstract voidcancel()
Turn the vibrator off.

This method requires the caller to hold the permission {@link android.Manifest.permission#VIBRATE}.

public abstract booleanhasVibrator()
Check whether the hardware has a vibrator.

return
True if the hardware has a vibrator, else false.

public voidvibrate(long milliseconds)
Vibrate constantly for the specified period of time.

This method requires the caller to hold the permission {@link android.Manifest.permission#VIBRATE}.

param
milliseconds The number of milliseconds to vibrate.

        vibrate(milliseconds, null);
    
public voidvibrate(long milliseconds, android.media.AudioAttributes attributes)
Vibrate constantly for the specified period of time.

This method requires the caller to hold the permission {@link android.Manifest.permission#VIBRATE}.

param
milliseconds The number of milliseconds to vibrate.
param
attributes {@link AudioAttributes} corresponding to the vibration. For example, specify {@link AudioAttributes#USAGE_ALARM} for alarm vibrations or {@link AudioAttributes#USAGE_NOTIFICATION_RINGTONE} for vibrations associated with incoming calls.

        vibrate(Process.myUid(), mPackageName, milliseconds, attributes);
    
public voidvibrate(long[] pattern, int repeat)
Vibrate with a given pattern.

Pass in an array of ints that are the durations for which to turn on or off the vibrator in milliseconds. The first value indicates the number of milliseconds to wait before turning the vibrator on. The next value indicates the number of milliseconds for which to keep the vibrator on before turning it off. Subsequent values alternate between durations in milliseconds to turn the vibrator off or to turn the vibrator on.

To cause the pattern to repeat, pass the index into the pattern array at which to start the repeat, or -1 to disable repeating.

This method requires the caller to hold the permission {@link android.Manifest.permission#VIBRATE}.

param
pattern an array of longs of times for which to turn the vibrator on or off.
param
repeat the index into pattern at which to repeat, or -1 if you don't want to repeat.

        vibrate(pattern, repeat, null);
    
public voidvibrate(long[] pattern, int repeat, android.media.AudioAttributes attributes)
Vibrate with a given pattern.

Pass in an array of ints that are the durations for which to turn on or off the vibrator in milliseconds. The first value indicates the number of milliseconds to wait before turning the vibrator on. The next value indicates the number of milliseconds for which to keep the vibrator on before turning it off. Subsequent values alternate between durations in milliseconds to turn the vibrator off or to turn the vibrator on.

To cause the pattern to repeat, pass the index into the pattern array at which to start the repeat, or -1 to disable repeating.

This method requires the caller to hold the permission {@link android.Manifest.permission#VIBRATE}.

param
pattern an array of longs of times for which to turn the vibrator on or off.
param
repeat the index into pattern at which to repeat, or -1 if you don't want to repeat.
param
attributes {@link AudioAttributes} corresponding to the vibration. For example, specify {@link AudioAttributes#USAGE_ALARM} for alarm vibrations or {@link AudioAttributes#USAGE_NOTIFICATION_RINGTONE} for vibrations associated with incoming calls.

        vibrate(Process.myUid(), mPackageName, pattern, repeat, attributes);
    
public abstract voidvibrate(int uid, java.lang.String opPkg, long milliseconds, android.media.AudioAttributes attributes)

hide
Like {@link #vibrate(long, AudioAttributes)}, but allowing the caller to specify that the vibration is owned by someone else.

public abstract voidvibrate(int uid, java.lang.String opPkg, long[] pattern, int repeat, android.media.AudioAttributes attributes)

hide
Like {@link #vibrate(long[], int, AudioAttributes)}, but allowing the caller to specify that the vibration is owned by someone else.