From af93d233bd0d2324d6dbdb55f989a6616b0f3d9d Mon Sep 17 00:00:00 2001 From: CappielloAntonio Date: Tue, 11 Jan 2022 16:25:11 +0100 Subject: [PATCH] Encoded password --- .../com/cappielloantonio/play/adapter/ServerAdapter.java | 1 + .../cappielloantonio/play/glide/CustomGlideRequest.java | 4 ++++ .../play/ui/dialog/ServerSignupDialog.java | 3 ++- .../java/com/cappielloantonio/play/util/MusicUtil.java | 7 ++++++- 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/cappielloantonio/play/adapter/ServerAdapter.java b/app/src/main/java/com/cappielloantonio/play/adapter/ServerAdapter.java index 5abf1011..a876dc38 100644 --- a/app/src/main/java/com/cappielloantonio/play/adapter/ServerAdapter.java +++ b/app/src/main/java/com/cappielloantonio/play/adapter/ServerAdapter.java @@ -18,6 +18,7 @@ import com.cappielloantonio.play.model.Server; import com.cappielloantonio.play.repository.SystemRepository; import com.cappielloantonio.play.ui.activity.MainActivity; import com.cappielloantonio.play.ui.dialog.ServerSignupDialog; +import com.cappielloantonio.play.util.MusicUtil; import com.cappielloantonio.play.util.PreferenceUtil; import java.util.ArrayList; diff --git a/app/src/main/java/com/cappielloantonio/play/glide/CustomGlideRequest.java b/app/src/main/java/com/cappielloantonio/play/glide/CustomGlideRequest.java index 7a334e63..d9489583 100644 --- a/app/src/main/java/com/cappielloantonio/play/glide/CustomGlideRequest.java +++ b/app/src/main/java/com/cappielloantonio/play/glide/CustomGlideRequest.java @@ -55,6 +55,10 @@ public class CustomGlideRequest { url = url + "&size=" + size; } + if (params.get("p") != null) { + url = url + "&p=" + params.get("p"); + } + Log.d(TAG, "createUrl() " + url); return url; diff --git a/app/src/main/java/com/cappielloantonio/play/ui/dialog/ServerSignupDialog.java b/app/src/main/java/com/cappielloantonio/play/ui/dialog/ServerSignupDialog.java index 686cf68c..bf59d7a6 100644 --- a/app/src/main/java/com/cappielloantonio/play/ui/dialog/ServerSignupDialog.java +++ b/app/src/main/java/com/cappielloantonio/play/ui/dialog/ServerSignupDialog.java @@ -20,6 +20,7 @@ import com.cappielloantonio.play.interfaces.SystemCallback; import com.cappielloantonio.play.model.Server; import com.cappielloantonio.play.repository.SystemRepository; import com.cappielloantonio.play.ui.activity.MainActivity; +import com.cappielloantonio.play.util.MusicUtil; import com.cappielloantonio.play.util.PreferenceUtil; import com.cappielloantonio.play.viewmodel.LoginViewModel; @@ -116,7 +117,7 @@ public class ServerSignupDialog extends DialogFragment { private boolean validateInput() { serverName = Objects.requireNonNull(bind.serverNameTextView.getText()).toString().trim(); username = Objects.requireNonNull(bind.usernameTextView.getText()).toString().trim(); - password = Objects.requireNonNull(bind.passwordTextView.getText()).toString(); + password = MusicUtil.passwordHexEncoding(Objects.requireNonNull(bind.passwordTextView.getText()).toString()); server = Objects.requireNonNull(bind.serverTextView.getText()).toString().trim(); directAccess = bind.directAccessCheckbox.isChecked(); lowSecurity = bind.lowSecurityCheckbox.isChecked(); 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 091e6992..8166fa92 100644 --- a/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java +++ b/app/src/main/java/com/cappielloantonio/play/util/MusicUtil.java @@ -17,6 +17,7 @@ import java.util.List; import java.util.Locale; import java.util.Map; import java.util.regex.Pattern; +import java.util.stream.Collectors; public class MusicUtil { private static final String TAG = "MusicUtil"; @@ -35,7 +36,7 @@ public class MusicUtil { "&c=" + params.get("c") + "&id=" + song.getId(); - if(connectivityManager.getActiveNetworkInfo() != null) { + if (connectivityManager.getActiveNetworkInfo() != null) { uri = uri + "&maxBitRate=" + getBitratePreference(context, connectivityManager.getActiveNetworkInfo().getType()) + "&format=" + getTranscodingFormatPreference(context, connectivityManager.getActiveNetworkInfo().getType()); @@ -129,6 +130,10 @@ public class MusicUtil { return readableStrings; } + public static String passwordHexEncoding(String plainPassword) { + return "enc:" + plainPassword.chars().mapToObj(Integer::toHexString).collect(Collectors.joining()); + } + public static int getDefaultPicPerCategory(String category) { switch (category) { case CustomGlideRequest.SONG_PIC: