diff options
author | ByteHamster <info@bytehamster.com> | 2021-03-27 22:31:10 +0100 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2021-03-28 22:32:40 +0200 |
commit | 998535515bae8ec5bcd2bd95bc0cf4f34416dff7 (patch) | |
tree | 0e069520f4ef706b428e587cccfd94c0434f3600 /app/src/main | |
parent | b1e15e8704f459014d76332014e81c3619bbc51c (diff) | |
download | AntennaPod-998535515bae8ec5bcd2bd95bc0cf4f34416dff7.zip |
Make AntennaPod pass the medium SpotBugs findings
Diffstat (limited to 'app/src/main')
8 files changed, 17 insertions, 23 deletions
diff --git a/app/src/main/java/com/google/android/material/bottomsheet/ViewPagerBottomSheetBehavior.java b/app/src/main/java/com/google/android/material/bottomsheet/ViewPagerBottomSheetBehavior.java index 9ed4897d2..d9b912634 100644 --- a/app/src/main/java/com/google/android/material/bottomsheet/ViewPagerBottomSheetBehavior.java +++ b/app/src/main/java/com/google/android/material/bottomsheet/ViewPagerBottomSheetBehavior.java @@ -53,6 +53,9 @@ public class ViewPagerBottomSheetBehavior<V extends View> extends BottomSheetBeh } public void updateScrollingChild() { + if (viewRef == null) { + return; + } final View scrollingChild = findScrollingChild(viewRef.get()); nestedScrollingChildRef = new WeakReference<>(scrollingChild); } diff --git a/app/src/main/java/de/danoeh/antennapod/activity/BugReportActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/BugReportActivity.java index 721291597..50794ba5b 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/BugReportActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/BugReportActivity.java @@ -99,7 +99,10 @@ public class BugReportActivity extends AppCompatActivity { private void exportLog() { try { File filename = new File(UserPreferences.getDataFolder(null), "full-logs.txt"); - filename.createNewFile(); + boolean success = filename.createNewFile(); + if (!success) { + throw new IOException("Unable to create output file"); + } String cmd = "logcat -d -f " + filename.getAbsolutePath(); Runtime.getRuntime().exec(cmd); //share file diff --git a/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java index 56a66ba93..1fcc3512d 100644 --- a/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java +++ b/app/src/main/java/de/danoeh/antennapod/activity/MediaplayerActivity.java @@ -2,7 +2,6 @@ package de.danoeh.antennapod.activity; import android.annotation.TargetApi; import android.content.Intent; -import android.content.SharedPreferences; import android.graphics.PixelFormat; import android.os.Build; import android.os.Bundle; @@ -479,7 +478,6 @@ public abstract class MediaplayerActivity extends CastEnabledActivity implements cardViewSeek = findViewById(R.id.cardViewSeek); txtvSeek = findViewById(R.id.txtvSeek); - SharedPreferences prefs = getSharedPreferences(PREFS, MODE_PRIVATE); showTimeLeft = UserPreferences.shouldShowRemainingTime(); Log.d("timeleft", showTimeLeft ? "true" : "false"); txtvLength = findViewById(R.id.txtvLength); diff --git a/app/src/main/java/de/danoeh/antennapod/asynctask/DocumentFileExportWorker.java b/app/src/main/java/de/danoeh/antennapod/asynctask/DocumentFileExportWorker.java index 906d50c61..73e19c746 100644 --- a/app/src/main/java/de/danoeh/antennapod/asynctask/DocumentFileExportWorker.java +++ b/app/src/main/java/de/danoeh/antennapod/asynctask/DocumentFileExportWorker.java @@ -5,7 +5,6 @@ import android.net.Uri; import androidx.annotation.NonNull; import androidx.documentfile.provider.DocumentFile; -import java.io.FileNotFoundException; import java.io.IOException; import java.io.OutputStream; import java.io.OutputStreamWriter; @@ -37,9 +36,6 @@ public class DocumentFileExportWorker { OutputStreamWriter writer = null; try { Uri uri = output.getUri(); - if (uri == null) { - throw new FileNotFoundException("Export file not found."); - } outputStream = context.getContentResolver().openOutputStream(uri); if (outputStream == null) { throw new IOException(); diff --git a/app/src/main/java/de/danoeh/antennapod/asynctask/ExportWorker.java b/app/src/main/java/de/danoeh/antennapod/asynctask/ExportWorker.java index 0930b59eb..af9f041af 100644 --- a/app/src/main/java/de/danoeh/antennapod/asynctask/ExportWorker.java +++ b/app/src/main/java/de/danoeh/antennapod/asynctask/ExportWorker.java @@ -41,8 +41,8 @@ public class ExportWorker { public Observable<File> exportObservable() { if (output.exists()) { - Log.w(TAG, "Overwriting previously exported file."); - output.delete(); + boolean success = output.delete(); + Log.w(TAG, "Overwriting previously exported file: " + success); } return Observable.create(subscriber -> { OutputStreamWriter writer = null; diff --git a/app/src/main/java/de/danoeh/antennapod/discovery/ItunesTopListLoader.java b/app/src/main/java/de/danoeh/antennapod/discovery/ItunesTopListLoader.java index e1034f89b..e4135fcaa 100644 --- a/app/src/main/java/de/danoeh/antennapod/discovery/ItunesTopListLoader.java +++ b/app/src/main/java/de/danoeh/antennapod/discovery/ItunesTopListLoader.java @@ -1,7 +1,6 @@ package de.danoeh.antennapod.discovery; import android.content.Context; -import android.content.SharedPreferences; import android.util.Log; import de.danoeh.antennapod.R; @@ -24,8 +23,6 @@ import java.util.List; import java.util.Locale; import java.util.concurrent.TimeUnit; -import static android.content.Context.MODE_PRIVATE; - public class ItunesTopListLoader { private static final String TAG = "ITunesTopListLoader"; private final Context context; @@ -38,13 +35,6 @@ public class ItunesTopListLoader { this.context = context; } - public Single<List<PodcastSearchResult>> loadToplist() { - String defaultCountry = Locale.getDefault().getCountry(); - SharedPreferences prefs = context.getSharedPreferences(PREFS, MODE_PRIVATE); - String countryCode = prefs.getString(PREF_KEY_COUNTRY_CODE, COUNTRY_CODE_UNSET); - return this.loadToplist(countryCode, 25); - } - public Single<List<PodcastSearchResult>> loadToplist(String country, int limit) { return Single.create((SingleOnSubscribe<List<PodcastSearchResult>>) emitter -> { OkHttpClient client = AntennapodHttpClient.getHttpClient(); diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/PagedToolbarFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/PagedToolbarFragment.java index 2ed26b1c0..f79bffabc 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/PagedToolbarFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/PagedToolbarFragment.java @@ -1,5 +1,6 @@ package de.danoeh.antennapod.fragment; +import androidx.annotation.NonNull; import androidx.appcompat.widget.Toolbar; import androidx.fragment.app.Fragment; import androidx.viewpager2.widget.ViewPager2; @@ -14,12 +15,12 @@ public abstract class PagedToolbarFragment extends Fragment { /** * Invalidate the toolbar menu if the current child fragment is visible. - * @param child The fragment, or null to force-refresh whatever the active fragment is. + * @param child The fragment to invalidate */ - void invalidateOptionsMenuIfActive(Fragment child) { + void invalidateOptionsMenuIfActive(@NonNull Fragment child) { Fragment visibleChild = getChildFragmentManager().findFragmentByTag("f" + viewPager.getCurrentItem()); - if (visibleChild == child || child == null) { - child.onPrepareOptionsMenu(toolbar.getMenu()); + if (visibleChild == child) { + visibleChild.onPrepareOptionsMenu(toolbar.getMenu()); } } diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java index 58cfece14..f6b7e74bb 100644 --- a/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java +++ b/app/src/main/java/de/danoeh/antennapod/fragment/SubscriptionFragment.java @@ -291,6 +291,9 @@ public class SubscriptionFragment extends Fragment implements Toolbar.OnMenuItem @Override public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) { super.onCreateContextMenu(menu, v, menuInfo); + if (menuInfo == null) { + return; + } AdapterView.AdapterContextMenuInfo adapterInfo = (AdapterView.AdapterContextMenuInfo) menuInfo; int position = adapterInfo.position; |