From 5ea515f6f47e76021586c7e09e37f707541d55f7 Mon Sep 17 00:00:00 2001 From: aliveoutside <53598473+aliveoutside@users.noreply.github.com> Date: Sat, 6 May 2023 19:23:15 +0300 Subject: [PATCH] fetch the lyrics from genius even when vk didn't provide them --- .../java/com/vk/music/view/x/LyricsHolder.java | 11 ++++++++++- .../com/vk/dto/music/MusicTrack.smali | 17 +++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/vk/music/view/x/LyricsHolder.java b/app/src/main/java/com/vk/music/view/x/LyricsHolder.java index 7ac4b567b..2fa0644c1 100644 --- a/app/src/main/java/com/vk/music/view/x/LyricsHolder.java +++ b/app/src/main/java/com/vk/music/view/x/LyricsHolder.java @@ -11,7 +11,6 @@ import com.vk.api.sdk.exceptions.VKApiExecutionException; import com.vk.common.k.PodcastTimeCodeClickListener; import com.vk.common.links.LinkParser; import com.vk.core.util.ContextExtKt; -import com.vk.dto.music.Artist; import com.vk.dto.music.MusicTrack; import com.vk.music.artists.chooser.MusicArtistSelector; import com.vk.music.common.MusicPlaybackLaunchContext; @@ -24,6 +23,8 @@ import com.vtosters.lite.R; import com.vtosters.lite.ViewUtils; import com.vtosters.lite.ui.MusicErrorViewHelper; import com.vtosters.lite.ui.holder.RecyclerHolder; +import ru.vtosters.lite.music.Genius; +import ru.vtosters.lite.utils.Preferences; import java.util.Objects; import java.util.concurrent.atomic.AtomicBoolean; @@ -155,6 +156,14 @@ public class LyricsHolder extends RecyclerHolder implements View.OnC @Override // com.vk.api.base.ApiCallback public void a(VKApiExecutionException vKApiExecutionException) { + if (Preferences.getBoolValue("useGenius", false)) { + var text = Genius.getTextMusic(a); + var lyrics = new AudioGetLyrics.a(); + lyrics.a = text; + a(lyrics); + return; + } + LyricsHolder.this.B.set(false); LyricsHolder.this.f18328f.a(vKApiExecutionException); LyricsHolder.this.f18328f.b(0); diff --git a/smali/smali_classes2/com/vk/dto/music/MusicTrack.smali b/smali/smali_classes2/com/vk/dto/music/MusicTrack.smali index a01a77a92..85d9ee154 100644 --- a/smali/smali_classes2/com/vk/dto/music/MusicTrack.smali +++ b/smali/smali_classes2/com/vk/dto/music/MusicTrack.smali @@ -2983,7 +2983,24 @@ invoke-virtual {v0, v2}, Lorg/json/JSONObject;->optInt(Ljava/lang/String;)I move-result v14 + ### + const-string v2, "useGenius" + const/4 v3, 0x0 + + invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; + + move-result-object v3 + + invoke-static {v2, v3}, Lru/vtosters/lite/utils/Preferences;->getBoolValue(Ljava/lang/String;Ljava/lang/Boolean;)Z + + move-result v3 + + if-eqz v3, :cond_37 + + const v14, 0x1 + ### + :cond_37 const-string v2, "album" .line 44