From aefd4902781acce87588935cd3d1cb2c3ef39964 Mon Sep 17 00:00:00 2001 From: Karim Abou Zeid Date: Sat, 7 Feb 2015 14:56:00 +0100 Subject: [PATCH] More bug fixes --- .../materialmusic/service/MusicService.java | 4 +-- .../activities/MusicControllerActivity.java | 1 + .../ui/activities/base/AbsFabActivity.java | 19 ++++++---- .../tageditor/AbsTagEditorActivity.java | 35 ++++++++----------- .../materialmusic/util/ImageLoaderUtil.java | 12 +++---- 5 files changed, 34 insertions(+), 37 deletions(-) diff --git a/app/src/main/java/com/kabouzeid/materialmusic/service/MusicService.java b/app/src/main/java/com/kabouzeid/materialmusic/service/MusicService.java index 8d313458..f8bedcf8 100644 --- a/app/src/main/java/com/kabouzeid/materialmusic/service/MusicService.java +++ b/app/src/main/java/com/kabouzeid/materialmusic/service/MusicService.java @@ -283,8 +283,8 @@ public class MusicService extends Service implements MediaPlayer.OnPreparedListe registerEverything(); isPlayerPrepared = false; player.reset(); - Uri trackUri = getCurrentPositionTrackUri(); try { + Uri trackUri = getCurrentPositionTrackUri(); player.setDataSource(getApplicationContext(), trackUri); currentSongId = getPlayingQueue().get(getPosition()).id; updateNotification(); @@ -298,8 +298,6 @@ public class MusicService extends Service implements MediaPlayer.OnPreparedListe playingNotificationHelper.updatePlayState(false); remoteControlClient.setPlaybackState(RemoteControlClient.PLAYSTATE_STOPPED); } - } else { - Toast.makeText(this, getResources().getString(R.string.audio_focus_denied), Toast.LENGTH_SHORT).show(); } notifyOnMusicRemoteEventListeners(MusicRemoteEvent.TRACK_CHANGED); } diff --git a/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/MusicControllerActivity.java b/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/MusicControllerActivity.java index c770e4bb..6c56547c 100644 --- a/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/MusicControllerActivity.java +++ b/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/MusicControllerActivity.java @@ -180,6 +180,7 @@ public class MusicControllerActivity extends AbsFabActivity implements OnMusicRe if (getApp().getMusicPlayerRemote().getPosition() >= 0) { song = getApp().getMusicPlayerRemote().getPlayingQueue().get(getApp().getMusicPlayerRemote().getPosition()); } else { + song = new Song(); finish(); } } diff --git a/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/base/AbsFabActivity.java b/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/base/AbsFabActivity.java index 0410b638..c54a021b 100644 --- a/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/base/AbsFabActivity.java +++ b/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/base/AbsFabActivity.java @@ -2,6 +2,7 @@ package com.kabouzeid.materialmusic.ui.activities.base; import android.os.Bundle; import android.support.v4.util.Pair; +import android.util.Log; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.View; @@ -78,6 +79,10 @@ public abstract class AbsFabActivity extends AbsBaseActivity implements OnMusicR protected FloatingActionButton getFab() { if (fab == null) { fab = (FloatingActionButton) findViewById(R.id.fab); + if(fab == null){ + fab = new FloatingActionButton(this); + Log.e(getTag(), "No FAB found created default FAB."); + } } return fab; } @@ -92,13 +97,13 @@ public abstract class AbsFabActivity extends AbsBaseActivity implements OnMusicR @Override public void enableViews() { super.enableViews(); - fab.setEnabled(true); + getFab().setEnabled(true); } @Override public void disableViews() { super.disableViews(); - fab.setEnabled(false); + getFab().setEnabled(false); } @Override @@ -144,19 +149,19 @@ public abstract class AbsFabActivity extends AbsBaseActivity implements OnMusicR public void onMusicRemoteEvent(MusicRemoteEvent event) { switch (event.getAction()) { case MusicRemoteEvent.PLAY: - fab.setImageDrawable(getResources().getDrawable(R.drawable.ic_pause_white_48dp)); + getFab().setImageDrawable(getResources().getDrawable(R.drawable.ic_pause_white_48dp)); break; case MusicRemoteEvent.PAUSE: - fab.setImageDrawable(getResources().getDrawable(R.drawable.ic_play_arrow_white_48dp)); + getFab().setImageDrawable(getResources().getDrawable(R.drawable.ic_play_arrow_white_48dp)); break; case MusicRemoteEvent.RESUME: - fab.setImageDrawable(getResources().getDrawable(R.drawable.ic_pause_white_48dp)); + getFab().setImageDrawable(getResources().getDrawable(R.drawable.ic_pause_white_48dp)); break; case MusicRemoteEvent.STOP: - fab.setImageDrawable(getResources().getDrawable(R.drawable.ic_play_arrow_white_48dp)); + getFab().setImageDrawable(getResources().getDrawable(R.drawable.ic_play_arrow_white_48dp)); break; case MusicRemoteEvent.QUEUE_COMPLETED: - fab.setImageResource(R.drawable.ic_play_arrow_white_48dp); + getFab().setImageResource(R.drawable.ic_play_arrow_white_48dp); break; } } diff --git a/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/tageditor/AbsTagEditorActivity.java b/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/tageditor/AbsTagEditorActivity.java index 33f6ba90..e468b258 100644 --- a/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/tageditor/AbsTagEditorActivity.java +++ b/app/src/main/java/com/kabouzeid/materialmusic/ui/activities/tageditor/AbsTagEditorActivity.java @@ -430,7 +430,7 @@ public abstract class AbsTagEditorActivity extends ActionBarActivity { try { return AudioFileIO.read(new File(path)); } catch (CannotReadException | ReadOnlyFileException | InvalidAudioFrameException | TagException | IOException e) { - Log.e(TAG, "error while trying to create the AudioFile from File", e); + Log.e(TAG, "Error while trying to create the AudioFile from java.io.File", e); } return null; } @@ -438,49 +438,43 @@ public abstract class AbsTagEditorActivity extends ActionBarActivity { protected String getAlbumTitle() { try { return getAudioFile(songPaths.get(0)).getTagOrCreateAndSetDefault().getFirst(FieldKey.ALBUM); - } catch (NullPointerException e) { - return null; - } + } catch (NullPointerException ignored) {} + return null; } protected String getArtistName() { try { return getAudioFile(songPaths.get(0)).getTagOrCreateAndSetDefault().getFirst(FieldKey.ARTIST); - } catch (NullPointerException e) { - return null; - } + } catch (NullPointerException ignored) {} + return null; } protected String getAlbumArtistName() { try { return getAudioFile(songPaths.get(0)).getTagOrCreateAndSetDefault().getFirst(FieldKey.ALBUM_ARTIST); - } catch (NullPointerException e) { - return null; - } + } catch (NullPointerException ignored) {} + return null; } protected String getGenreName() { try { return getAudioFile(songPaths.get(0)).getTagOrCreateAndSetDefault().getFirst(FieldKey.GENRE); - } catch (NullPointerException e) { - return null; - } + } catch (NullPointerException ignored) {} + return null; } protected String getSongYear() { try { return getAudioFile(songPaths.get(0)).getTagOrCreateAndSetDefault().getFirst(FieldKey.YEAR); - } catch (NullPointerException e) { - return null; - } + } catch (NullPointerException ignored) {} + return null; } protected String getTrackNumber() { try { return getAudioFile(songPaths.get(0)).getTagOrCreateAndSetDefault().getFirst(FieldKey.TRACK); - } catch (NullPointerException e) { - return null; - } + } catch (NullPointerException ignored) {} + return null; } protected Bitmap getAlbumArt() { @@ -490,8 +484,7 @@ public abstract class AbsTagEditorActivity extends ActionBarActivity { byte[] artworkBinaryData = artworkTag.getBinaryData(); return BitmapFactory.decodeByteArray(artworkBinaryData, 0, artworkBinaryData.length); } - } catch (NullPointerException e) { - } + } catch (NullPointerException ignored) {} return null; } } diff --git a/app/src/main/java/com/kabouzeid/materialmusic/util/ImageLoaderUtil.java b/app/src/main/java/com/kabouzeid/materialmusic/util/ImageLoaderUtil.java index 1d45c437..4e2cc064 100644 --- a/app/src/main/java/com/kabouzeid/materialmusic/util/ImageLoaderUtil.java +++ b/app/src/main/java/com/kabouzeid/materialmusic/util/ImageLoaderUtil.java @@ -48,12 +48,12 @@ public class ImageLoaderUtil { public static class defaultAlbumArtOnFailed implements ImageLoadingListener { @Override public void onLoadingStarted(String imageUri, View view) { - ((ImageView) view).setImageResource(R.drawable.default_album_art); + if (view != null) ((ImageView) view).setImageResource(R.drawable.default_album_art); } @Override public void onLoadingFailed(String imageUri, View view, FailReason failReason) { - ((ImageView) view).setImageResource(R.drawable.default_album_art); + if (view != null) ((ImageView) view).setImageResource(R.drawable.default_album_art); } @Override @@ -63,7 +63,7 @@ public class ImageLoaderUtil { @Override public void onLoadingCancelled(String imageUri, View view) { - ((ImageView) view).setImageResource(R.drawable.default_album_art); + if (view != null) ((ImageView) view).setImageResource(R.drawable.default_album_art); } } @@ -71,12 +71,12 @@ public class ImageLoaderUtil { @Override public void onLoadingStarted(String imageUri, View view) { - ((ImageView) view).setImageResource(R.drawable.default_artist_image); + if (view != null) ((ImageView) view).setImageResource(R.drawable.default_artist_image); } @Override public void onLoadingFailed(String imageUri, View view, FailReason failReason) { - ((ImageView) view).setImageResource(R.drawable.default_artist_image); + if (view != null) ((ImageView) view).setImageResource(R.drawable.default_artist_image); } @Override @@ -86,7 +86,7 @@ public class ImageLoaderUtil { @Override public void onLoadingCancelled(String imageUri, View view) { - ((ImageView) view).setImageResource(R.drawable.default_artist_image); + if (view != null) ((ImageView) view).setImageResource(R.drawable.default_artist_image); } } }