Search code examples
androidringtonevibration

How to vibrate the phone in sync with the ringtone?


I want to vibrate the phone in the same way as the incoming call in sync with the ringtone. How do I achieve it?


Solution

    • Get an MP3 library that gives you feedback for magnitude of sound (Something like equalizer in winamp)
    • Normalize this magnitude to a scale of [0,1]
    • As the android vibrator api supports only vibration duration (not intensity) you need to discretize this magnitude to either 0 or 1 (for some small duration).
    • If the magnitude of sound is less than some value, 0.5, do not vibrate for that duration. Else vibrate.