From c74ea64b70aabd05346e60d415890557af4da6a4 Mon Sep 17 00:00:00 2001 From: Daniele Gobbetti Date: Mon, 25 Sep 2017 11:09:45 +0200 Subject: [PATCH] Pebble: Address the missing remarks of #807 - Separate the getAudioPlayer method - Replace the println calls with proper LOG statements --- .../receivers/GBMusicControlReceiver.java | 36 ++++++++++--------- 1 file changed, 20 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/receivers/GBMusicControlReceiver.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/receivers/GBMusicControlReceiver.java index e008a590..77202922 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/receivers/GBMusicControlReceiver.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/receivers/GBMusicControlReceiver.java @@ -76,22 +76,7 @@ public class GBMusicControlReceiver extends BroadcastReceiver { } if (keyCode != -1) { - Prefs prefs = GBApplication.getPrefs(); - String audioPlayer = prefs.getString("audio_player", "default"); - - if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) { - MediaSessionManager mediaSessionManager = - (MediaSessionManager) context.getSystemService(Context.MEDIA_SESSION_SERVICE); - - List controllers = mediaSessionManager.getActiveSessions( - new ComponentName(context, NotificationListener.class)); - try { - MediaController controller = controllers.get(0); - audioPlayer = controller.getPackageName(); - } catch (IndexOutOfBoundsException e) { - System.err.println("IndexOutOfBoundsException: " + e.getMessage()); - } - } + String audioPlayer = getAudioPlayer(context); LOG.debug("keypress: " + musicCmd.toString() + " sent to: " + audioPlayer); @@ -114,4 +99,23 @@ public class GBMusicControlReceiver extends BroadcastReceiver { context.sendOrderedBroadcast(upIntent, null); } } + + private String getAudioPlayer(Context context) { + Prefs prefs = GBApplication.getPrefs(); + String audioPlayer = prefs.getString("audio_player", "default"); + if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) { + MediaSessionManager mediaSessionManager = + (MediaSessionManager) context.getSystemService(Context.MEDIA_SESSION_SERVICE); + + List controllers = mediaSessionManager.getActiveSessions( + new ComponentName(context, NotificationListener.class)); + try { + MediaController controller = controllers.get(0); + audioPlayer = controller.getPackageName(); + } catch (IndexOutOfBoundsException e) { + LOG.error("IndexOutOfBoundsException: " + e.getMessage()); + } + } + return audioPlayer; + } }