From 3b5de788ed92d9ddbab12601c917d525c240cbb1 Mon Sep 17 00:00:00 2001 From: CappielloAntonio Date: Sat, 5 Feb 2022 18:41:35 +0100 Subject: [PATCH] Generalized the creation of URIs for any media --- .../cappielloantonio/play/util/MusicUtil.java | 20 +++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) 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 8166fa92..8b010f74 100644 --- a/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java +++ b/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java @@ -22,7 +22,7 @@ import java.util.stream.Collectors; public class MusicUtil { private static final String TAG = "MusicUtil"; - public static Uri getSongStreamUri(Context context, Song song) { + public static Uri getStreamUri(Context context, String id) { ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); Map params = App.getSubsonicClientInstance(App.getInstance(), false).getParams(); @@ -34,7 +34,7 @@ public class MusicUtil { "&t=" + params.get("t") + "&v=" + params.get("v") + "&c=" + params.get("c") + - "&id=" + song.getId(); + "&id=" + id; if (connectivityManager.getActiveNetworkInfo() != null) { uri = uri + "&maxBitRate=" @@ -48,7 +48,7 @@ public class MusicUtil { } @SuppressLint("UnsafeOptInUsageError") - public static Uri getSongDownloadUri(Song song) { + public static Uri getDownloadUri(String id) { Map params = App.getSubsonicClientInstance(App.getInstance(), false).getParams(); String uri = App.getSubsonicClientInstance(App.getInstance(), false).getUrl() + @@ -58,7 +58,7 @@ public class MusicUtil { "&t=" + params.get("t") + "&v=" + params.get("v") + "&c=" + params.get("c") + - "&id=" + song.getId(); + "&id=" + id; Log.d(TAG, "getSongDownloadUri(): " + uri); @@ -86,6 +86,18 @@ public class MusicUtil { } } + public static String getReadablePodcastDurationString(long duration) { + long minutes = duration / 60; + + if (minutes < 60) { + return String.format(Locale.getDefault(), "%01d min", minutes); + } else { + long hours = minutes / 60; + minutes = minutes % 60; + return String.format(Locale.getDefault(), "%d h %02d min", hours, minutes); + } + } + public static String getReadableString(String string) { if (string != null) { return Html.fromHtml(string, Html.FROM_HTML_MODE_COMPACT).toString();