diff --git a/app/src/main/java/ru/vtosters/hooks/music/injectors/CatalogJsonInjector.java b/app/src/main/java/ru/vtosters/hooks/music/injectors/CatalogJsonInjector.java index 1a47d3e68..75d4aa103 100644 --- a/app/src/main/java/ru/vtosters/hooks/music/injectors/CatalogJsonInjector.java +++ b/app/src/main/java/ru/vtosters/hooks/music/injectors/CatalogJsonInjector.java @@ -7,6 +7,7 @@ import com.vk.core.util.DeviceIdProvider; import okhttp3.Headers; import okhttp3.OkHttpClient; import okhttp3.Request; +import okhttp3.Response; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; @@ -15,6 +16,7 @@ import ru.vtosters.lite.di.singleton.VtOkHttpClient; import ru.vtosters.lite.music.cache.MusicCacheImpl; import ru.vtosters.lite.utils.AccountManagerUtils; import ru.vtosters.lite.utils.AndroidUtils; +import ru.vtosters.sponsorpost.utils.GzipDecompressor; import java.io.IOException; @@ -263,9 +265,10 @@ public class CatalogJsonInjector { + sectionUrl + "&access_token=" + AccountManagerUtils.getUserToken()) + .a("Accept-Encoding", "gzip") .a(Headers.a("User-Agent", Network.l.c().a(), "Content-Type", "application/x-www-form-urlencoded; charset=utf-8")).a(); - try { - var json = new JSONObject(mClient.a(request).execute().a().g()).getJSONObject("response"); + try (Response resp = mClient.a(request).execute()) { + var json = new JSONObject(GzipDecompressor.decompressResponse(resp)).getJSONObject("response"); var catalogarr = json.optJSONObject("catalog").optJSONArray("sections").optJSONObject(0); var title = catalogarr.optString("title"); @@ -279,4 +282,4 @@ public class CatalogJsonInjector { Log.d("VTLMusic", "Error: " + e.getMessage()); } } -} +} \ No newline at end of file diff --git a/app/src/main/java/ru/vtosters/lite/music/converter/playlist/PlaylistConverter.java b/app/src/main/java/ru/vtosters/lite/music/converter/playlist/PlaylistConverter.java index 6b24fa4b4..6e29a8877 100644 --- a/app/src/main/java/ru/vtosters/lite/music/converter/playlist/PlaylistConverter.java +++ b/app/src/main/java/ru/vtosters/lite/music/converter/playlist/PlaylistConverter.java @@ -8,10 +8,12 @@ import java8.util.concurrent.CompletableFuture; import okhttp3.Headers; import okhttp3.OkHttpClient; import okhttp3.Request; +import okhttp3.Response; import org.json.JSONException; import org.json.JSONObject; import ru.vtosters.lite.utils.AccountManagerUtils; import ru.vtosters.lite.utils.AndroidUtils; +import ru.vtosters.sponsorpost.utils.GzipDecompressor; import java.io.IOException; import java.util.ArrayList; @@ -50,17 +52,17 @@ public class PlaylistConverter { var request = new Request.a() .b(requestUrl) + .a("Accept-Encoding", "gzip") .a(Headers.a("User-Agent", Network.l.c().a(), "Content-Type", "application/x-www-form-urlencoded; charset=utf-8")).a(); try { var response = CompletableFuture.supplyAsync(() -> { - try { - return new OkHttpClient().a(request).execute().a().g(); - } catch (IOException e) { - throw new RuntimeException(e); - } - } - ).get(); + try (Response resp = new OkHttpClient().a(request).execute()) { + return GzipDecompressor.decompressResponse(resp); + } catch (IOException e) { + throw new RuntimeException(e); + } + }).get(); var jsonObj = new JSONObject(response); if (!jsonObj.has("response")) return null; diff --git a/app/src/main/java/ru/vtosters/lite/music/downloader/AudioGet.java b/app/src/main/java/ru/vtosters/lite/music/downloader/AudioGet.java index 5ee2312c8..75f1793be 100644 --- a/app/src/main/java/ru/vtosters/lite/music/downloader/AudioGet.java +++ b/app/src/main/java/ru/vtosters/lite/music/downloader/AudioGet.java @@ -8,9 +8,11 @@ import java8.util.concurrent.CompletableFuture; import okhttp3.Headers; import okhttp3.OkHttpClient; import okhttp3.Request; +import okhttp3.Response; import org.json.JSONException; import org.json.JSONObject; import ru.vtosters.lite.utils.AndroidUtils; +import ru.vtosters.sponsorpost.utils.GzipDecompressor; import java.io.IOException; import java.util.ArrayList; @@ -44,12 +46,13 @@ public class AudioGet { var request = new Request.a() .b(requestUrl) + .a("Accept-Encoding", "gzip") .a(Headers.a("User-Agent", Network.l.c().a(), "Content-Type", "application/x-www-form-urlencoded; charset=utf-8")).a(); try { var response = CompletableFuture.supplyAsync(() -> { - try { - return new OkHttpClient().a(request).execute().a().g(); + try (Response resp = new OkHttpClient().a(request).execute()) { + return GzipDecompressor.decompressResponse(resp); } catch (IOException e) { throw new RuntimeException(e); }