mirror of
				https://github.com/TeamNewPipe/NewPipe
				synced 2025-10-31 07:13:00 +00:00 
			
		
		
		
	Merge pull request #12410 from Stypox/fix-android-auto-thumbnails
This commit is contained in:
		| @@ -8,6 +8,7 @@ import android.support.v4.media.MediaBrowserCompat | ||||
| import android.support.v4.media.MediaDescriptionCompat | ||||
| import android.util.Log | ||||
| import androidx.annotation.DrawableRes | ||||
| import androidx.core.net.toUri | ||||
| import androidx.media.MediaBrowserServiceCompat | ||||
| import androidx.media.MediaBrowserServiceCompat.Result | ||||
| import androidx.media.utils.MediaConstants | ||||
| @@ -103,7 +104,7 @@ class MediaBrowserImpl( | ||||
|  | ||||
|     private fun onLoadChildren(parentId: String): Single<List<MediaBrowserCompat.MediaItem>> { | ||||
|         try { | ||||
|             val parentIdUri = Uri.parse(parentId) | ||||
|             val parentIdUri = parentId.toUri() | ||||
|             val path = ArrayList(parentIdUri.pathSegments) | ||||
|  | ||||
|             if (path.isEmpty()) { | ||||
| @@ -185,7 +186,7 @@ class MediaBrowserImpl( | ||||
|         builder | ||||
|             .setMediaId(createMediaIdForInfoItem(playlist is PlaylistRemoteEntity, playlist.uid)) | ||||
|             .setTitle(playlist.orderingName) | ||||
|             .setIconUri(playlist.thumbnailUrl?.let { Uri.parse(it) }) | ||||
|             .setIconUri(imageUriOrNullIfDisabled(playlist.thumbnailUrl)) | ||||
|  | ||||
|         val extras = Bundle() | ||||
|         extras.putString( | ||||
| @@ -212,7 +213,7 @@ class MediaBrowserImpl( | ||||
|         } | ||||
|  | ||||
|         ImageStrategy.choosePreferredImage(item.thumbnails)?.let { | ||||
|             builder.setIconUri(Uri.parse(it)) | ||||
|             builder.setIconUri(imageUriOrNullIfDisabled(it)) | ||||
|         } | ||||
|  | ||||
|         return MediaBrowserCompat.MediaItem( | ||||
| @@ -258,7 +259,7 @@ class MediaBrowserImpl( | ||||
|         builder.setMediaId(createMediaIdForPlaylistIndex(false, playlistId, index)) | ||||
|             .setTitle(item.streamEntity.title) | ||||
|             .setSubtitle(item.streamEntity.uploader) | ||||
|             .setIconUri(Uri.parse(item.streamEntity.thumbnailUrl)) | ||||
|             .setIconUri(imageUriOrNullIfDisabled(item.streamEntity.thumbnailUrl)) | ||||
|  | ||||
|         return MediaBrowserCompat.MediaItem( | ||||
|             builder.build(), | ||||
| @@ -277,7 +278,7 @@ class MediaBrowserImpl( | ||||
|             .setSubtitle(item.uploaderName) | ||||
|  | ||||
|         ImageStrategy.choosePreferredImage(item.thumbnails)?.let { | ||||
|             builder.setIconUri(Uri.parse(it)) | ||||
|             builder.setIconUri(imageUriOrNullIfDisabled(it)) | ||||
|         } | ||||
|  | ||||
|         return MediaBrowserCompat.MediaItem( | ||||
| @@ -316,7 +317,7 @@ class MediaBrowserImpl( | ||||
|         builder.setMediaId(mediaId) | ||||
|             .setTitle(streamHistoryEntry.streamEntity.title) | ||||
|             .setSubtitle(streamHistoryEntry.streamEntity.uploader) | ||||
|             .setIconUri(Uri.parse(streamHistoryEntry.streamEntity.thumbnailUrl)) | ||||
|             .setIconUri(imageUriOrNullIfDisabled(streamHistoryEntry.streamEntity.thumbnailUrl)) | ||||
|  | ||||
|         return MediaBrowserCompat.MediaItem( | ||||
|             builder.build(), | ||||
| @@ -395,5 +396,13 @@ class MediaBrowserImpl( | ||||
|  | ||||
|     companion object { | ||||
|         private val TAG: String = MediaBrowserImpl::class.java.getSimpleName() | ||||
|  | ||||
|         fun imageUriOrNullIfDisabled(url: String?): Uri? { | ||||
|             return if (ImageStrategy.shouldLoadImages()) { | ||||
|                 url?.toUri() | ||||
|             } else { | ||||
|                 null | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| } | ||||
|   | ||||
| @@ -6,6 +6,7 @@ import android.os.Bundle | ||||
| import android.os.ResultReceiver | ||||
| import android.support.v4.media.session.PlaybackStateCompat | ||||
| import android.util.Log | ||||
| import androidx.core.net.toUri | ||||
| import com.google.android.exoplayer2.Player | ||||
| import com.google.android.exoplayer2.ext.mediasession.MediaSessionConnector.PlaybackPreparer | ||||
| import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers | ||||
| @@ -137,7 +138,7 @@ class MediaBrowserPlaybackPreparer( | ||||
|  | ||||
|     private fun extractPlayQueueFromMediaId(mediaId: String): Single<PlayQueue> { | ||||
|         try { | ||||
|             val mediaIdUri = Uri.parse(mediaId) | ||||
|             val mediaIdUri = mediaId.toUri() | ||||
|             val path = ArrayList(mediaIdUri.pathSegments) | ||||
|             if (path.isEmpty()) { | ||||
|                 throw parseError(mediaId) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Stypox
					Stypox