Compare commits

..
Author SHA1 Message Date
gdlbo 27dd93efa3 many fixes 2024-03-30 05:47:39 +03:00
gdlbo f4c7cdce8b init
??
2024-03-30 04:56:38 +03:00
5 changed files with 60 additions and 63 deletions
@@ -4,6 +4,7 @@ import android.util.Log;
import bruhcollective.itaysonlab.libvkx.client.LibVKXClient;
import com.vk.core.network.Network;
import com.vk.core.util.DeviceIdProvider;
import okhttp3.Headers;
import okhttp3.Request;
import okhttp3.Response;
import org.json.JSONArray;
@@ -57,11 +58,7 @@ public class CatalogJsonInjector {
if (!MusicCacheImpl.isEmpty() && !LibVKXClient.isIntegrationEnabled()) { // inj in playlist list
var noPlaylists = !json.has("playlists");
if (noPlaylists) {
PlaylistHelper.addCachedPlaylists(new JSONArray());
} else {
PlaylistHelper.addCachedPlaylists(json.optJSONArray("playlists"));
}
PlaylistHelper.addCachedPlaylists(json.optJSONArray("playlists"), noPlaylists);
if (!useOldAppVer || noPlaylists) {
var newBlocks = new JSONArray();
@@ -102,11 +99,7 @@ public class CatalogJsonInjector {
var noPlaylists = !json.has("playlists");
if (noPlaylists) {
PlaylistHelper.addCachedPlaylists(new JSONArray());
} else {
PlaylistHelper.addCachedPlaylists(json.optJSONArray("playlists"));
}
PlaylistHelper.addCachedPlaylists(json.optJSONArray("playlists"), noPlaylists);
if (!useOldAppVer && !noPlaylists) {
var newBlocks = new JSONArray();
@@ -165,12 +165,12 @@ public class TracklistInjector {
boolean noPlaylists = hasNoPlaylists(blocks);
if (noPlaylists) {
PlaylistHelper.addCachedPlaylists(new JSONArray());
PlaylistHelper.addCachedPlaylists(catalogNode.optJSONArray("playlists"), true);
firstSection.put("blocks", createNewBlocks(blocks));
} else {
try {
PlaylistHelper.addCachedPlaylists(catalogNode.optJSONArray("playlists"));
PlaylistHelper.addCachedPlaylists(catalogNode.optJSONArray("playlists"), false);
updatePlaylistsIds(blocks);
} catch (Exception e) {
@@ -270,7 +270,7 @@ public class TracklistInjector {
return new JSONObject()
.put("catalog", catalog)
.put("playlists", addCachedPlaylists(new JSONArray()))
.put("playlists", addCachedPlaylists(new JSONArray(), false))
.put("audios", TracklistHelper.tracksToJsons(tracks));
}
@@ -23,8 +23,12 @@ public class PlaylistHelper {
}
}
public static JSONArray addCachedPlaylists(JSONArray jsonArray) {
public static JSONArray addCachedPlaylists(JSONArray jsonArray, Boolean noPlaylists) {
try {
if (noPlaylists) {
jsonArray.put(new JSONArray());
}
if (!PlaylistCacheDbDelegate.isPlaylistEmpty(AndroidUtils.getGlobalContext(), AccountManagerUtils.getUserId() + "_-1")) {
jsonArray.put(getCachedSongsPlaylist());
}
@@ -35,7 +35,7 @@
const-string v0, "func_v"
const/16 v1, 0x25
const/16 v1, 0x1b
.line 3
invoke-virtual {p0, v0, v1}, Lcom/vk/api/base/ApiRequest;->b(Ljava/lang/String;I)Lcom/vk/api/base/ApiRequest;
@@ -39,7 +39,7 @@
.line 3
invoke-virtual {p0, v0, p1}, Lcom/vk/api/base/ApiRequest;->b(Ljava/lang/String;I)Lcom/vk/api/base/ApiRequest;
const/16 v0, 0x17
const/16 v0, 0xb
const-string v1, "func_v"
@@ -476,89 +476,89 @@
invoke-direct {v2}, Landroid/util/SparseArray;-><init>()V
# const-string v4, "cities"
const-string v4, "cities"
# .line 20
# invoke-virtual {v1, v4}, Lorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;
.line 20
invoke-virtual {v1, v4}, Lorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;
# move-result-object v4
move-result-object v4
# const/4 v9, 0x0
const/4 v9, 0x0
# .line 21
# :goto_3
# invoke-virtual {v4}, Lorg/json/JSONArray;->length()I
.line 21
:goto_3
invoke-virtual {v4}, Lorg/json/JSONArray;->length()I
# move-result v10
move-result v10
const-string v11, "title"
# if-ge v9, v10, :cond_4
if-ge v9, v10, :cond_4
# .line 22
# invoke-virtual {v4, v9}, Lorg/json/JSONArray;->getJSONObject(I)Lorg/json/JSONObject;
.line 22
invoke-virtual {v4, v9}, Lorg/json/JSONArray;->getJSONObject(I)Lorg/json/JSONObject;
# move-result-object v10
move-result-object v10
# .line 23
# invoke-virtual {v10, v3}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I
.line 23
invoke-virtual {v10, v3}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I
# move-result v12
move-result v12
# invoke-virtual {v10, v11}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
invoke-virtual {v10, v11}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
# move-result-object v10
move-result-object v10
# invoke-virtual {v2, v12, v10}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V
invoke-virtual {v2, v12, v10}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V
# add-int/lit8 v9, v9, 0x1
add-int/lit8 v9, v9, 0x1
# goto :goto_3
goto :goto_3
# .line 24
# :cond_4
# new-instance v4, Landroid/util/SparseArray;
.line 24
:cond_4
new-instance v4, Landroid/util/SparseArray;
# invoke-direct {v4}, Landroid/util/SparseArray;-><init>()V
invoke-direct {v4}, Landroid/util/SparseArray;-><init>()V
# const-string v9, "cities"
const-string v9, "cities"
# .line 25
# invoke-virtual {v1, v9}, Lorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;
.line 25
invoke-virtual {v1, v9}, Lorg/json/JSONObject;->getJSONArray(Ljava/lang/String;)Lorg/json/JSONArray;
# move-result-object v9
move-result-object v9
# const/4 v10, 0x0
const/4 v10, 0x0
# .line 26
# :goto_4
# invoke-virtual {v9}, Lorg/json/JSONArray;->length()I
.line 26
:goto_4
invoke-virtual {v9}, Lorg/json/JSONArray;->length()I
# move-result v12
move-result v12
# if-ge v10, v12, :cond_5
if-ge v10, v12, :cond_5
# .line 27
# invoke-virtual {v9, v10}, Lorg/json/JSONArray;->getJSONObject(I)Lorg/json/JSONObject;
.line 27
invoke-virtual {v9, v10}, Lorg/json/JSONArray;->getJSONObject(I)Lorg/json/JSONObject;
# move-result-object v12
move-result-object v12
# .line 28
# invoke-virtual {v12, v3}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I
.line 28
invoke-virtual {v12, v3}, Lorg/json/JSONObject;->getInt(Ljava/lang/String;)I
# move-result v13
move-result v13
# invoke-virtual {v12, v11}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
invoke-virtual {v12, v11}, Lorg/json/JSONObject;->getString(Ljava/lang/String;)Ljava/lang/String;
# move-result-object v12
move-result-object v12
# invoke-virtual {v4, v13, v12}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V
invoke-virtual {v4, v13, v12}, Landroid/util/SparseArray;->put(ILjava/lang/Object;)V
# add-int/lit8 v10, v10, 0x1
add-int/lit8 v10, v10, 0x1
# goto :goto_4
goto :goto_4
# :cond_5
:cond_5
const-string v4, "can_write_private_message"
.line 29