diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 54415858e..f6708fa83 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -111,6 +111,7 @@ jobs: path: app/build/reports/androidTests/connected/** sonar: + if: ${{ false }} # the key has expired and needs to be regenerated by the sonar admins runs-on: ubuntu-latest permissions: diff --git a/README.md b/README.md index 3cd7927af..c19144064 100644 --- a/README.md +++ b/README.md @@ -1,11 +1,11 @@ -
refactor
branch if you want to contribute new features. The current codebase is in maintenance mode and will only receive bugfixes.
diff --git a/app/src/main/java/org/schabi/newpipe/local/subscription/SubscriptionFragment.kt b/app/src/main/java/org/schabi/newpipe/local/subscription/SubscriptionFragment.kt
index 91ff7cd27..8c5d05394 100644
--- a/app/src/main/java/org/schabi/newpipe/local/subscription/SubscriptionFragment.kt
+++ b/app/src/main/java/org/schabi/newpipe/local/subscription/SubscriptionFragment.kt
@@ -12,6 +12,7 @@ import android.view.MenuItem
import android.view.SubMenu
import android.view.View
import android.view.ViewGroup
+import android.webkit.MimeTypeMap
import android.widget.Toast
import androidx.activity.result.ActivityResult
import androidx.activity.result.contract.ActivityResultContracts.StartActivityForResult
@@ -456,6 +457,7 @@ class SubscriptionFragment : BaseStateFragment
> {
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
+ }
+ }
}
}
diff --git a/app/src/main/java/org/schabi/newpipe/player/mediabrowser/MediaBrowserPlaybackPreparer.kt b/app/src/main/java/org/schabi/newpipe/player/mediabrowser/MediaBrowserPlaybackPreparer.kt
index f34677a29..a3791e2e7 100644
--- a/app/src/main/java/org/schabi/newpipe/player/mediabrowser/MediaBrowserPlaybackPreparer.kt
+++ b/app/src/main/java/org/schabi/newpipe/player/mediabrowser/MediaBrowserPlaybackPreparer.kt
@@ -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
NewPipe
.Android واجهة أمامية متدفقة خفيفة الوزن لنظام
-
+
diff --git a/doc/README.asm.md b/doc/README.asm.md
index c2d919d09..37d0949b7 100644
--- a/doc/README.asm.md
+++ b/doc/README.asm.md
@@ -2,7 +2,7 @@
NewPipe
এণ্ড্ৰইডৰ বাবে এটা লিব্ৰে লাইটৱেট ষ্ট্ৰীমিং ফ্ৰন্ট-এণ্ড।
-
+
diff --git a/doc/README.de.md b/doc/README.de.md
index 03dd2b364..34ad94ab1 100644
--- a/doc/README.de.md
+++ b/doc/README.de.md
@@ -1,11 +1,11 @@
-
Wir planen große Teile des Quellcodes neu zu schreiben, um NewPipe neu, modern und stabiler zu machen!
-Öffne keine neuen Pull Requests für neue Features, es werden nur Fehlerbehebungen akzeptiert.
+Wir sind im Prozess, größere Teile unseres Codes neuzuschreiben, um eine moderne und stabile NewPipe App zu kreieren! Du kannst nightly builds hier herunterladen.
+Bitte nutze den
refactor
branch als Arbeitsgrundlage, wenn du neue Funktionen beitragen willst. Die aktuelle Codebase ist im reinen Maintenance mode und bekommt nur noch Fehlerbehebungen.NewPipe
Eine freie, offene und leichtgewichtige Streaming App für Android.
-
+
diff --git a/doc/README.es.md b/doc/README.es.md
index 338b3242a..4a08cba08 100644
--- a/doc/README.es.md
+++ b/doc/README.es.md
@@ -2,7 +2,7 @@
NewPipe
Una interfaz de streaming ligera y libre para Android.
-
+
diff --git a/doc/README.fr.md b/doc/README.fr.md
index ee3621e27..cfebcb2a6 100644
--- a/doc/README.fr.md
+++ b/doc/README.fr.md
@@ -5,7 +5,7 @@
NewPipe
Un front-end de streaming libre et léger pour Android.
-
+
diff --git a/doc/README.hi.md b/doc/README.hi.md
index ed56fca14..6098c6c26 100644
--- a/doc/README.hi.md
+++ b/doc/README.hi.md
@@ -2,7 +2,7 @@
NewPipe
Android के लिए एक ओपन सोर्स, हल्का YouTube ऐप।
-
+
diff --git a/doc/README.it.md b/doc/README.it.md
index 930959c77..d926db6bc 100644
--- a/doc/README.it.md
+++ b/doc/README.it.md
@@ -2,7 +2,7 @@
NewPipe
Un frontend di streaming libero e leggero per Android.
-
+
diff --git a/doc/README.ja.md b/doc/README.ja.md
index 19902d57e..1e751855b 100644
--- a/doc/README.ja.md
+++ b/doc/README.ja.md
@@ -2,7 +2,7 @@
NewPipe
自由で軽量な Android 向けストリーミングフロントエンド
-
+
diff --git a/doc/README.ko.md b/doc/README.ko.md
index 3c2f9f39e..39fb7e11c 100644
--- a/doc/README.ko.md
+++ b/doc/README.ko.md
@@ -2,7 +2,7 @@
NewPipe
A libre lightweight streaming frontend for Android.
-
+
diff --git a/doc/README.pa.md b/doc/README.pa.md
index 2dbc94c14..9b84ded18 100644
--- a/doc/README.pa.md
+++ b/doc/README.pa.md
@@ -2,7 +2,7 @@
NewPipe
ਐਂਡਰੌਇਡ ਲਈ ਇੱਕ ਮੁਫ਼ਤ ਹਲਕਾ-ਫੁਲਕਾ ਸਟ੍ਰੀਮਿੰਗ ਯੂਟਿਊਬ ਫਰੰਟ-ਐਂਡ।
-
+
diff --git a/doc/README.pl.md b/doc/README.pl.md
index 9d216c590..9574491c7 100644
--- a/doc/README.pl.md
+++ b/doc/README.pl.md
@@ -2,7 +2,7 @@
NewPipe
Wolny, lekki streamingowy frontend na Androida.
-
+
diff --git a/doc/README.pt_BR.md b/doc/README.pt_BR.md
index d65fa9790..b73da2de1 100644
--- a/doc/README.pt_BR.md
+++ b/doc/README.pt_BR.md
@@ -6,7 +6,7 @@
NewPipe
Uma interface de streaming leve e gratuita para Android.
-
+
diff --git a/doc/README.ro.md b/doc/README.ro.md
index 5363ef7bc..3f146f7e4 100644
--- a/doc/README.ro.md
+++ b/doc/README.ro.md
@@ -2,7 +2,7 @@
NewPipe
Un front-end de streaming „uşor” liber, pentru Android.
-
+
diff --git a/doc/README.ru.md b/doc/README.ru.md
index 894e5f2e0..8a9955707 100644
--- a/doc/README.ru.md
+++ b/doc/README.ru.md
@@ -2,7 +2,7 @@
NewPipe
Свободный и легковесный клиент потоковых сервисов для Android.
-
+
diff --git a/doc/README.ryu.md b/doc/README.ryu.md
index 8676f1bfd..f3ca31af0 100644
--- a/doc/README.ryu.md
+++ b/doc/README.ryu.md
@@ -2,7 +2,7 @@
NewPipe
じゆーいっしけいりょうなAndroidんきーストリーミングフロントエンド
-
+
diff --git a/doc/README.so.md b/doc/README.so.md
index 82e544d93..843bed749 100644
--- a/doc/README.so.md
+++ b/doc/README.so.md
@@ -2,7 +2,7 @@
NewPipe
App bilaash ah oo fudud looguna talagalay in Android-ka wax loogu daawado.
-
+
diff --git a/doc/README.sr.md b/doc/README.sr.md
index d8b0fe435..21e4d857c 100644
--- a/doc/README.sr.md
+++ b/doc/README.sr.md
@@ -5,7 +5,7 @@
NewPipe
Бесплатна и лагана апликација за стримовање за Android.
-
+
diff --git a/doc/README.tr.md b/doc/README.tr.md
index c6610d97d..6e95e54de 100644
--- a/doc/README.tr.md
+++ b/doc/README.tr.md
@@ -2,7 +2,7 @@
NewPipe
Android için hafif ve özgür bir akış arayüzü.
-
+
diff --git a/doc/README.zh_TW.md b/doc/README.zh_TW.md
index 04a8355cb..05518624f 100644
--- a/doc/README.zh_TW.md
+++ b/doc/README.zh_TW.md
@@ -2,7 +2,7 @@
NewPipe
輕巧的 Android 串流前端
-
+