Open TheMCNerd2017 opened 2 years ago
I can see a notification from NewPipe which says "NewPipe encountered an error, tap to report". That should give you an error log.
Another thing to narrow this down would be to install a debug build and go into the Debug menu. The last 3 options are to generate crash reports. If these work, then it might be a specific crash that causes this behaviour.
I can see a notification from NewPipe which says "NewPipe encountered an error, tap to report". That should give you an error log.
The error that comes up is the exact same one as #8379 which is what I reproduced in the video. If you want I'll trigger it again and paste whatever NewPipe gives (if the error notification comes up since when the crash happens sometimes the error notification does not come up). Additionally NewPipe also crashes if I trigger other errors like #8401 or #7943, though I never get an error notification with those, just a crash.
EDIT: I reproduced the crash in the video and got the error log. It looks to be the exact same as #8379 so likely not related to the app crashing entirely.
com.google.android.exoplayer2.ExoPlaybackException: Unexpected runtime error
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:625)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.os.HandlerThread.run(HandlerThread.java:67)
Caused by: java.lang.IllegalArgumentException
at com.google.android.exoplayer2.util.Assertions.checkArgument(Assertions.java:39)
at com.google.android.exoplayer2.source.BaseMediaSource.prepareSource(BaseMediaSource.java:207)
at com.google.android.exoplayer2.source.CompositeMediaSource.prepareChildSource(CompositeMediaSource.java:120)
at com.google.android.exoplayer2.source.MaskingMediaSource.prepareSourceInternal(MaskingMediaSource.java:85)
at com.google.android.exoplayer2.source.BaseMediaSource.prepareSource(BaseMediaSource.java:214)
at com.google.android.exoplayer2.source.CompositeMediaSource.prepareChildSource(CompositeMediaSource.java:120)
at com.google.android.exoplayer2.source.ConcatenatingMediaSource.addMediaSourceInternal(ConcatenatingMediaSource.java:778)
at com.google.android.exoplayer2.source.ConcatenatingMediaSource.addMediaSourcesInternal(ConcatenatingMediaSource.java:761)
at com.google.android.exoplayer2.source.ConcatenatingMediaSource.prepareSourceInternal(ConcatenatingMediaSource.java:464)
at com.google.android.exoplayer2.source.BaseMediaSource.prepareSource(BaseMediaSource.java:214)
at com.google.android.exoplayer2.source.CompositeMediaSource.prepareChildSource(CompositeMediaSource.java:120)
at com.google.android.exoplayer2.source.MaskingMediaSource.prepareSourceInternal(MaskingMediaSource.java:85)
at com.google.android.exoplayer2.source.BaseMediaSource.prepareSource(BaseMediaSource.java:214)
at com.google.android.exoplayer2.MediaSourceList.prepareChildSource(MediaSourceList.java:446)
at com.google.android.exoplayer2.MediaSourceList.prepare(MediaSourceList.java:291)
at com.google.android.exoplayer2.ExoPlayerImplInternal.prepareInternal(ExoPlayerImplInternal.java:704)
at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:483)
... 4 more
Another thing to narrow this down would be to install a debug build and go into the Debug menu. The last 3 options are to generate crash reports. If these work, then it might be a specific crash that causes this behaviour.
OK I'll try out a debug build. Should I use the debug build for the next version (V0.24.0) that was recently made available?
Another thing to narrow this down would be to install a debug build and go into the Debug menu. The last 3 options are to generate crash reports. If these work, then it might be a specific crash that causes this behaviour.
OK I installed the V0.24.0 RC1 debug APK and used the last three options. "Create an error notification" worked every time I used it without any crashes. "Show an error snackbar" also worked every time I used it without any crashes. "Crash the app" encountered similar behavior to what I encountered in the normal NewPipe app: crash to the home screen without an error notification or error displayed. Though unlike the standard version it animated itself closing, where as the standard NewPipe just jumps instantly to the home screen. This did not happen all the time though, as most of the times it would work properly by showing the "dummy" error.
I did not import any data from my existing NewPipe during my testing session incase you were wondering. I'm actually going to try that next and attempt to reproduce the crash that I recorded in the original video.
Do you have root or access to ADB? Using the app Scoop, if you try to reproduce this crash using your STR, you should be able to get a crash log using Android logcat.
Do you have root or access to ADB? Using the app Scoop, if you try to reproduce this crash using your STR, you should be able to get a crash log using Android logcat.
Root access in GrapheneOS is not possible as far as I know. I can enable USB debugging in developer settings though which should let me execute the adb logcat command from a PC.
I've also never heard of the app called Scoop. Is it something I install on my phone?
EDIT: I enabled USB debugging and connected my phone to the PC. Ran adb logcat which displayed the logcat. Afterwards I reproduced the crash in the original video (though this time NewPipe did not show an error report notification) and think it was caught on the logcat.
EDIT 2: I also generated a bug report using "adb bugreport" however it still omitted the logcat despite being executed from a PC and with USB debugging enabled. I'll get the tombstone from the bug report and upload it here as well.
EDIT 3: Got the tombstone file mentioned in the logcat. newpipe_0.23.3_tombstone.zip
I'm not sure how much it'll matter for this, but it could help to ensure native code debugging is enabled before taking logs.
I'm not sure how much it'll matter for this, but it could help to ensure native code debugging is enabled before taking logs.
Native code debugging was enabled in Security settings (which I believe is the default on GrapheneOS) when I grabbed the logcat, and when I generated bug reports that I got the tombstone from.
Issue is still fully reproducible in Newpipe 0.24.0. I'll try to get another logcat of the crash.
OK turns out bugreports on GrapheneOS do include a logcat dump (in the largest TXT file), just not in a separate text file like I thought it was suppose to be in. Either way I reproduced two crashes, one when putting a playing video into fullscreen and another when playing a video in the background from the history (the same steps I performed in my original post).
I also have uploaded the respective tombstone files as well that the logcat snippets mention. newpipe_0.24.0_tombstones.zip
If you'd like me to share the entire bugreport zip file please let me know so I can share it privately.
Checklist
Affected version
0.23.3
Steps to reproduce the bug
Expected behavior
NewPipe shows the bug report notification and stays open.
Actual behavior
NewPipe either instantly crashes and brings you back to the home screen or brings up a bug report notification before crashing shortly after. Error in the bug report notification (if it comes up) is whatever error your actions have caused (in my case it was a bug I reported months ago).
Screenshots/Screen recordings
https://user-images.githubusercontent.com/25375242/187010149-4748146b-14f1-4964-bae3-e4331c3ea794.mp4
Logs
N/A. I'll try to get a logcat but GrapheneOS seemingly omits logcat from "bug reports" generated through developer settings. So I would need to reproduce the issue while connecting my phone to a PC running ADB.
Affected Android/Custom ROM version
GrapheneOS 13 (TP1A.220624.014.2022082400)
Affected device model
Pixel 4 XL
Additional information
Other random crashes have been coming up when doing other normal things (one crash came up while simply watching a video) as well as when triggering other errors that would bring up the bug report notification. These crashes only started after updating to GrapheneOS 13 so this may be caused by an incompatibility with GrapheneOS 13.