Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Library/acitvity crashes when power button is pressed #239

Open
tiger79 opened this issue Apr 20, 2023 · 1 comment
Open

Library/acitvity crashes when power button is pressed #239

tiger79 opened this issue Apr 20, 2023 · 1 comment

Comments

@tiger79
Copy link

tiger79 commented Apr 20, 2023

Hi,
I am trying to make a POC using your library but I have encountered a hard crash whenever the user presses the power button of the device (Samsung XCover 5 running Android 13) whilst streaming a video. This happens continuesly so it's easy to reproduce. I also was able to reproduce this on the Android Emulator running A13.

I also cloned the project, build and installed the app and I am still getting the same crash and log output !

It seems like network connectivity is happening on the main Thread, which StrictMode doesn't like ?

The error which is being thrown is the following :

--------- beginning of crash
2023-04-20 10:25:13.504 16791-16791/com.company.videopoc E/AndroidRuntime: FATAL EXCEPTION: main
  Process:com.company.videopoc, PID: 16791
  java.lang.RuntimeException: Unable to pause activity {com.company.videopoc/com.company.videopoc.ui.ShowVideoActivity}: android.os.NetworkOnMainThreadException
      at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:5704)
      at android.app.ActivityThread.performPauseActivity(ActivityThread.java:5655)
      at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:5607)
      at android.app.servertransaction.PauseActivityItem.execute(PauseActivityItem.java:47)
      at android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:45)
      at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176)
      at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97)
      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2571)
      at android.os.Handler.dispatchMessage(Handler.java:106)
      at android.os.Looper.loopOnce(Looper.java:226)
      at android.os.Looper.loop(Looper.java:313)
      at android.app.ActivityThread.main(ActivityThread.java:8741)
      at java.lang.reflect.Method.invoke(Native Method)
      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571)
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)
   Caused by: android.os.NetworkOnMainThreadException
      at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1667)
      at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:431)
      at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:836)
      at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:824)
      at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:797)
      at com.android.okhttp.okio.Okio$2.read(Okio.java:138)
      at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213)
      at com.android.okhttp.okio.RealBufferedSource.request(RealBufferedSource.java:72)
      at com.android.okhttp.okio.RealBufferedSource.require(RealBufferedSource.java:65)
      at com.android.okhttp.okio.RealBufferedSource.readHexadecimalUnsignedLong(RealBufferedSource.java:271)
      at com.android.okhttp.internal.http.Http1xStream$ChunkedSource.readChunkSize(Http1xStream.java:456)
      at com.android.okhttp.internal.http.Http1xStream$ChunkedSource.read(Http1xStream.java:437)
      at com.android.okhttp.internal.Util.skipAll(Util.java:165)
      at com.android.okhttp.internal.Util.discard(Util.java:147)
      at com.android.okhttp.internal.http.Http1xStream$ChunkedSource.close(Http1xStream.java:474)
      at com.android.okhttp.okio.RealBufferedSource.close(RealBufferedSource.java:397)
      at com.android.okhttp.okio.RealBufferedSource$1.close(RealBufferedSource.java:385)
      at com.google.firebase.perf.network.InstrHttpInputStream.close(InstrHttpInputStream.java:67)
      at java.io.BufferedInputStream.close(BufferedInputStream.java:485)
      at java.io.FilterInputStream.close(FilterInputStream.java:180)
      at com.github.niqdev.mjpeg.MjpegViewDefault._stopPlayback(MjpegViewDefault.java:143)
      at com.github.niqdev.mjpeg.MjpegViewDefault.stopPlayback(MjpegViewDefault.java:283)
      at com.github.niqdev.mjpeg.MjpegSurfaceView.stopPlayback(MjpegSurfaceView.java:136)
      at com.company.videopoc.ui.ShowVideoActivity.onPause(ShowVideoActivity.kt:206)
      at android.app.Activity.performPause(Activity.java:8765)
      at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1585)
      at android.app.ActivityThread.performPauseActivityIfNeeded(ActivityThread.java:5694)
      at android.app.ActivityThread.performPauseActivity(ActivityThread.java:5655) 
      at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:5607) 
      at android.app.servertransaction.PauseActivityItem.execute(PauseActivityItem.java:47) 
      at android.app.servertransaction.ActivityTransactionItem.execute(ActivityTransactionItem.java:45) 
      at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:176) 
      at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:97) 
      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2571) 
      at android.os.Handler.dispatchMessage(Handler.java:106) 
      at android.os.Looper.loopOnce(Looper.java:226) 
      at android.os.Looper.loop(Looper.java:313) 
      at android.app.ActivityThread.main(ActivityThread.java:8741) 
      at java.lang.reflect.Method.invoke(Native Method) 
      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571) 
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067) 
@tiger79 tiger79 changed the title Unable to pause activity when power button is pressed Library/acitvity crashes when power button is pressed Apr 20, 2023
@niqdev
Copy link
Owner

niqdev commented Apr 22, 2023

Hi @tiger79 thanks for reporting the issue, I'm not actively maintaining the project but if you think this is a bug, feel free to open a pr to fix it and I'll be happy to merge it! Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants