From d169e3b188d3110cbc5251ee69dd758f2c27aeeb Mon Sep 17 00:00:00 2001 From: CappielloAntonio Date: Sat, 4 Sep 2021 17:01:39 +0200 Subject: [PATCH] Fixed a lot of possible issues raised by a code inspection --- .../cappielloantonio/play/model/Playlist.java | 3 +++ .../play/service/MultiPlayer.java | 2 +- .../play/ui/fragment/SettingsFragment.java | 17 ++--------------- .../SongBottomSheetDialog.java | 1 - .../fragment/dialog/PlaylistEditorDialog.java | 2 +- .../ui/fragment/dialog/ServerSignupDialog.java | 8 ++++---- .../cappielloantonio/play/util/MusicUtil.java | 4 ++-- 7 files changed, 13 insertions(+), 24 deletions(-) diff --git a/app/src/main/java/com/cappielloantonio/play/model/Playlist.java b/app/src/main/java/com/cappielloantonio/play/model/Playlist.java index 3723d9da..6613e336 100644 --- a/app/src/main/java/com/cappielloantonio/play/model/Playlist.java +++ b/app/src/main/java/com/cappielloantonio/play/model/Playlist.java @@ -3,6 +3,8 @@ package com.cappielloantonio.play.model; import android.os.Parcel; import android.os.Parcelable; +import androidx.annotation.NonNull; + public class Playlist implements Parcelable { public static final String ALL = "ALL"; public static final String DOWNLOADED = "DOWNLOADED"; @@ -66,6 +68,7 @@ public class Playlist implements Parcelable { return id.hashCode(); } + @NonNull @Override public String toString() { return id; diff --git a/app/src/main/java/com/cappielloantonio/play/service/MultiPlayer.java b/app/src/main/java/com/cappielloantonio/play/service/MultiPlayer.java index d05b9a24..71ad3f4e 100644 --- a/app/src/main/java/com/cappielloantonio/play/service/MultiPlayer.java +++ b/app/src/main/java/com/cappielloantonio/play/service/MultiPlayer.java @@ -133,7 +133,7 @@ public class MultiPlayer implements Playback { String uri = MusicUtil.getSongFileUri(song); MediaItem mediaItem = exoPlayer.getCurrentMediaItem(); - if (mediaItem != null && mediaItem.playbackProperties.uri.toString().equals(uri)) { + if (mediaItem != null && mediaItem.playbackProperties != null && mediaItem.playbackProperties.uri.toString().equals(uri)) { return; } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/SettingsFragment.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/SettingsFragment.java index 87fac982..da6d9156 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/SettingsFragment.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/SettingsFragment.java @@ -19,7 +19,6 @@ import com.cappielloantonio.play.R; import com.cappielloantonio.play.helper.ThemeHelper; import com.cappielloantonio.play.interfaces.ScanCallback; import com.cappielloantonio.play.ui.activity.MainActivity; -import com.cappielloantonio.play.util.PreferenceUtil; import com.cappielloantonio.play.viewmodel.SettingViewModel; public class SettingsFragment extends PreferenceFragmentCompat { @@ -36,7 +35,8 @@ public class SettingsFragment extends PreferenceFragmentCompat { someActivityResultLauncher = registerForActivityResult( new ActivityResultContracts.StartActivityForResult(), - result -> { }); + result -> { + }); } @Override @@ -63,19 +63,6 @@ public class SettingsFragment extends PreferenceFragmentCompat { public void onResume() { super.onResume(); - findPreference("logout").setOnPreferenceClickListener(preference -> { - PreferenceUtil.getInstance(requireContext()).setUser(null); - PreferenceUtil.getInstance(requireContext()).setServer(null); - PreferenceUtil.getInstance(requireContext()).setPassword(null); - PreferenceUtil.getInstance(requireContext()).setToken(null); - PreferenceUtil.getInstance(requireContext()).setSalt(null); - PreferenceUtil.getInstance(requireContext()).setServerId(null); - - activity.quit(); - - return true; - }); - findPreference("scan_library").setOnPreferenceClickListener(preference -> { settingViewModel.launchScan(new ScanCallback() { @Override diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java index de160b42..44379092 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/bottomsheetdialog/SongBottomSheetDialog.java @@ -32,7 +32,6 @@ import com.cappielloantonio.play.viewmodel.SongBottomSheetViewModel; import com.google.android.material.bottomsheet.BottomSheetDialogFragment; import java.util.ArrayList; -import java.util.Arrays; import java.util.Collections; import java.util.List; diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/PlaylistEditorDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/PlaylistEditorDialog.java index 2562bf92..01b480db 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/PlaylistEditorDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/PlaylistEditorDialog.java @@ -124,7 +124,7 @@ public class PlaylistEditorDialog extends DialogFragment { toPosition = target.getBindingAdapterPosition(); Collections.swap(playlistDialogSongHorizontalAdapter.getItems(), fromPosition, toPosition); - recyclerView.getAdapter().notifyItemMoved(fromPosition, toPosition); + Objects.requireNonNull(recyclerView.getAdapter()).notifyItemMoved(fromPosition, toPosition); return false; } diff --git a/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/ServerSignupDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/ServerSignupDialog.java index 2646cedd..14a3b793 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/ServerSignupDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/fragment/dialog/ServerSignupDialog.java @@ -112,10 +112,10 @@ public class ServerSignupDialog extends DialogFragment { } private boolean validateInput() { - serverName = bind.serverNameTextView.getText().toString().trim(); - username = bind.usernameTextView.getText().toString().trim(); - password = bind.passwordTextView.getText().toString(); - server = bind.serverTextView.getText().toString().trim(); + serverName = Objects.requireNonNull(bind.serverNameTextView.getText()).toString().trim(); + username = Objects.requireNonNull(bind.usernameTextView.getText()).toString().trim(); + password = Objects.requireNonNull(bind.passwordTextView.getText()).toString(); + server = Objects.requireNonNull(bind.serverTextView.getText()).toString().trim(); directAccess = bind.directAccessCheckbox.isChecked(); if (TextUtils.isEmpty(serverName)) { diff --git a/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java b/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java index 434309d5..279e07c6 100644 --- a/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java +++ b/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java @@ -32,8 +32,8 @@ public class MusicUtil { } public static String getReadableDurationString(long duration, boolean millis) { - long minutes = 0; - long seconds = 0; + long minutes; + long seconds; if (millis) { minutes = (duration / 1000) / 60;