Checklist
Affected version
0.28.2
Steps to reproduce the bug
- Tried to play this Digital Foundry video:
DF Retro Super Show [#007]: How Unreal Engine 3 Dominated A Console Generation
Expected behavior
Video should play without crashing the app, as it works fine in NewPipe 0.28.3 on the same device
Actual behavior
Tubular crashes on that video (and some others), but NewPipe doesn't on the same videos
Screenshots/Recordings
N / A
Affected Android/Custom ROM version
Android 5.1 "Lollipop"
Affected device model
Old Motorola phone
Additional information
No issue with the same videos when played in NewPipe 0.28.3 on the same phone
So I guess in Tubular, issue might be to do with the Sponsor Block or Restore YouTube Dislike add-ons perhaps not working correctly? 🤔
Clearly I realise Android 5.1 won't be supported for much-longer by NewPipe (and therefore Tubular too, as a fork) though I'm not aware of the exact roadmap on this?
Logs
Crash report:
Exception
- User Action: ui error
- Request: ACRA report
- Content Country: GB
- Content Language: en-GB
- App Language: en
- Service: <unknown_service>
- Timestamp: 2026-02-10T19:10:40.205Z
- Package: org.polymorphicshade.tubular
- Service: <unknown_service>
- Version: 0.28.2
- OS: Linux Android 5.1 - 22
Crash log
java.lang.NoSuchMethodError: No virtual method getColor(I)I in class Landroid/content/Context; or its super classes (declaration of 'android.content.Context' appears in /system/framework/framework.jar)
at org.schabi.newpipe.fragments.list.sponsorblock.SponsorBlockSegmentListAdapter$SponsorBlockSegmentItemViewHolder.updateFrom(SponsorBlockSegmentListAdapter.java:212)
at org.schabi.newpipe.fragments.list.sponsorblock.SponsorBlockSegmentListAdapter$SponsorBlockSegmentItemViewHolder.-$$Nest$mupdateFrom(SponsorBlockSegmentListAdapter.java:0)
at org.schabi.newpipe.fragments.list.sponsorblock.SponsorBlockSegmentListAdapter.onBindViewHolder(SponsorBlockSegmentListAdapter.java:87)
at org.schabi.newpipe.fragments.list.sponsorblock.SponsorBlockSegmentListAdapter.onBindViewHolder(SponsorBlockSegmentListAdapter.java:36)
at androidx.recyclerview.widget.RecyclerView$Adapter.onBindViewHolder(RecyclerView.java:7846)
at androidx.recyclerview.widget.RecyclerView$Adapter.bindViewHolder(RecyclerView.java:7953)
at androidx.recyclerview.widget.RecyclerView$Recycler.tryBindViewHolderByDeadline(RecyclerView.java:6742)
at androidx.recyclerview.widget.RecyclerView$Recycler.tryGetViewHolderForPositionByDeadline(RecyclerView.java:7013)
at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6853)
at androidx.recyclerview.widget.RecyclerView$Recycler.getViewForPosition(RecyclerView.java:6849)
at androidx.recyclerview.widget.LinearLayoutManager$LayoutState.next(LinearLayoutManager.java:2422)
at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1722)
at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1682)
at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:747)
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4737)
at androidx.recyclerview.widget.RecyclerView.onMeasure(RecyclerView.java:4133)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17565)
at androidx.core.widget.NestedScrollView.measureChildWithMargins(NestedScrollView.java:1993)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at androidx.core.widget.NestedScrollView.onMeasure(NestedScrollView.java:652)
at android.view.View.measure(View.java:17565)
at androidx.viewpager.widget.ViewPager.onMeasure(ViewPager.java:1638)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:760)
at com.google.android.material.appbar.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:100)
at com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:2381)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:831)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at android.view.View.measure(View.java:17565)
at com.google.android.material.bottomsheet.BottomSheetBehavior.onMeasureChild(BottomSheetBehavior.java:515)
at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:831)
at android.view.View.measure(View.java:17565)
at androidx.drawerlayout.widget.DrawerLayout.onMeasure(DrawerLayout.java:1156)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:141)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1436)
at android.widget.LinearLayout.measureVertical(LinearLayout.java:722)
at android.widget.LinearLayout.onMeasure(LinearLayout.java:613)
at android.view.View.measure(View.java:17565)
at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:5537)
at android.widget.FrameLayout.onMeasure(FrameLayout.java:436)
at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2615)
at android.view.View.measure(View.java:17565)
at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:2045)
at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:1196)
at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1409)
at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1084)
at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:5990)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:767)
at android.view.Choreographer.doCallbacks(Choreographer.java:580)
at android.view.Choreographer.doFrame(Choreographer.java:550)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:753)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5343)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:905)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:700)
Checklist
Affected version
0.28.2
Steps to reproduce the bug
DF Retro Super Show [#007]: How Unreal Engine 3 Dominated A Console Generation
Expected behavior
Video should play without crashing the app, as it works fine in NewPipe 0.28.3 on the same device
Actual behavior
Tubular crashes on that video (and some others), but NewPipe doesn't on the same videos
Screenshots/Recordings
N / A
Affected Android/Custom ROM version
Android 5.1 "Lollipop"
Affected device model
Old Motorola phone
Additional information
No issue with the same videos when played in NewPipe 0.28.3 on the same phone
So I guess in Tubular, issue might be to do with the Sponsor Block or Restore YouTube Dislike add-ons perhaps not working correctly? 🤔
Clearly I realise Android 5.1 won't be supported for much-longer by NewPipe (and therefore Tubular too, as a fork) though I'm not aware of the exact roadmap on this?
Logs
Crash report:
Exception
Crash log