diff options
| -rw-r--r-- | core/java/android/os/Vibrator.java | 4 | ||||
| -rw-r--r-- | core/java/com/android/internal/app/ShutdownThread.java | 8 |
2 files changed, 9 insertions, 3 deletions
diff --git a/core/java/android/os/Vibrator.java b/core/java/android/os/Vibrator.java index 58ed986ebe45..be818da1a877 100644 --- a/core/java/android/os/Vibrator.java +++ b/core/java/android/os/Vibrator.java @@ -50,7 +50,7 @@ public class Vibrator } try { mService.vibrate(milliseconds, mToken); - } catch (Exception e) { + } catch (RemoteException e) { Log.w(TAG, "Failed to vibrate.", e); } } @@ -80,7 +80,7 @@ public class Vibrator if (repeat < pattern.length) { try { mService.vibratePattern(pattern, repeat, mToken); - } catch (Exception e) { + } catch (RemoteException e) { Log.w(TAG, "Failed to vibrate.", e); } } else { diff --git a/core/java/com/android/internal/app/ShutdownThread.java b/core/java/com/android/internal/app/ShutdownThread.java index 1fcd654da8f8..b7255bb1914c 100644 --- a/core/java/com/android/internal/app/ShutdownThread.java +++ b/core/java/com/android/internal/app/ShutdownThread.java @@ -360,7 +360,13 @@ public final class ShutdownThread extends Thread { } else if (SHUTDOWN_VIBRATE_MS > 0) { // vibrate before shutting down Vibrator vibrator = new Vibrator(); - vibrator.vibrate(SHUTDOWN_VIBRATE_MS); + try { + vibrator.vibrate(SHUTDOWN_VIBRATE_MS); + } catch (Exception e) { + // Failure to vibrate shouldn't interrupt shutdown. Just log it. + Log.w(TAG, "Failed to vibrate during shutdown.", e); + } + // vibrator is asynchronous so we need to wait to avoid shutting down too soon. try { Thread.sleep(SHUTDOWN_VIBRATE_MS); |