fix: manually encoded the username when creating the uri for streaming and fetching coverArt

This commit is contained in:
antonio 2023-08-21 16:15:08 +02:00
parent 0201077bc4
commit af83ffd608
3 changed files with 16 additions and 4 deletions

View file

@ -16,6 +16,7 @@ import com.bumptech.glide.request.RequestOptions;
import com.bumptech.glide.signature.ObjectKey; import com.bumptech.glide.signature.ObjectKey;
import com.cappielloantonio.tempo.App; import com.cappielloantonio.tempo.App;
import com.cappielloantonio.tempo.util.Preferences; import com.cappielloantonio.tempo.util.Preferences;
import com.cappielloantonio.tempo.util.Util;
import com.google.android.material.elevation.SurfaceColors; import com.google.android.material.elevation.SurfaceColors;
import java.util.Map; import java.util.Map;
@ -46,7 +47,7 @@ public class CustomGlideRequest {
uri.append("getCoverArt"); uri.append("getCoverArt");
if (params.containsKey("u") && params.get("u") != null) if (params.containsKey("u") && params.get("u") != null)
uri.append("?u=").append(params.get("u")); uri.append("?u=").append(Util.encode(params.get("u")));
if (params.containsKey("p") && params.get("p") != null) if (params.containsKey("p") && params.get("p") != null)
uri.append("&p=").append(params.get("p")); uri.append("&p=").append(params.get("p"));
if (params.containsKey("s") && params.get("s") != null) if (params.containsKey("s") && params.get("s") != null)

View file

@ -32,7 +32,7 @@ public class MusicUtil {
uri.append("stream"); uri.append("stream");
if (params.containsKey("u") && params.get("u") != null) if (params.containsKey("u") && params.get("u") != null)
uri.append("?u=").append(params.get("u")); uri.append("?u=").append(Util.encode(params.get("u")));
if (params.containsKey("p") && params.get("p") != null) if (params.containsKey("p") && params.get("p") != null)
uri.append("&p=").append(params.get("p")); uri.append("&p=").append(params.get("p"));
if (params.containsKey("s") && params.get("s") != null) if (params.containsKey("s") && params.get("s") != null)
@ -68,7 +68,7 @@ public class MusicUtil {
uri.append("download"); uri.append("download");
if (params.containsKey("u") && params.get("u") != null) if (params.containsKey("u") && params.get("u") != null)
uri.append("?u=").append(params.get("u")); uri.append("?u=").append(Util.encode(params.get("u")));
if (params.containsKey("p") && params.get("p") != null) if (params.containsKey("p") && params.get("p") != null)
uri.append("&p=").append(params.get("p")); uri.append("&p=").append(params.get("p"));
if (params.containsKey("s") && params.get("s") != null) if (params.containsKey("s") && params.get("s") != null)
@ -99,7 +99,7 @@ public class MusicUtil {
uri.append("stream"); uri.append("stream");
if (params.containsKey("u") && params.get("u") != null) if (params.containsKey("u") && params.get("u") != null)
uri.append("?u=").append(params.get("u")); uri.append("?u=").append(Util.encode(params.get("u")));
if (params.containsKey("p") && params.get("p") != null) if (params.containsKey("p") && params.get("p") != null)
uri.append("&p=").append(params.get("p")); uri.append("&p=").append(params.get("p"));
if (params.containsKey("s") && params.get("s") != null) if (params.containsKey("s") && params.get("s") != null)

View file

@ -1,5 +1,8 @@
package com.cappielloantonio.tempo.util; package com.cappielloantonio.tempo.util;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import java.util.Map; import java.util.Map;
import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function; import java.util.function.Function;
@ -50,4 +53,12 @@ public class Util {
return pascalCase.toString(); return pascalCase.toString();
} }
public static String encode(String value) {
try {
return URLEncoder.encode(value, StandardCharsets.UTF_8.toString());
} catch (UnsupportedEncodingException ex) {
return value;
}
}
} }