diff --git a/app/src/main/java/ru/vtosters/lite/downloaders/AudioDownloader.java b/app/src/main/java/ru/vtosters/lite/downloaders/AudioDownloader.java index 24a31411a..cf3e96cd6 100644 --- a/app/src/main/java/ru/vtosters/lite/downloaders/AudioDownloader.java +++ b/app/src/main/java/ru/vtosters/lite/downloaders/AudioDownloader.java @@ -37,7 +37,6 @@ public class AudioDownloader { public static void downloadPlaylist(Playlist playlist) { var tracks = PlaylistConverter.getPlaylist(playlist); - var tracksWithUrls = tracks.stream().filter(track -> !track.D.isEmpty()).collect(Collectors.toList()); var playlistName = IOUtils.getValidFileName(playlist.g); @@ -48,10 +47,10 @@ public class AudioDownloader { var notification = MusicNotificationBuilder.buildPlaylistDownloadNotification(playlistName, notificationId); PlaylistDownloader.downloadPlaylist( - tracksWithUrls, + tracks, IOUtils.getValidFileName(playlist.g), downloadPath, - MusicCallbackBuilder.buildPlaylistCallback(tracksWithUrls.size(), notification, notificationId) + MusicCallbackBuilder.buildPlaylistCallback(tracks.size(), notification, notificationId) ); } 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 bc479d3f1..56e295e16 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 @@ -64,7 +64,12 @@ public class PlaylistConverter { var playlist = new JSONObject(response).getJSONObject("response").getJSONArray("audios"); var tracks = new ArrayList(); for (int i = 0; i < playlist.length(); i++) { - tracks.add(new MusicTrack(playlist.getJSONObject(i))); + var track = new MusicTrack(playlist.getJSONObject(i)); + + // add track only if it has a valid url + if (!track.D.isEmpty()) { + tracks.add(track); + } } return tracks;