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

[BUG] [Android] App crash when re-entering full screen from a player that was previously sent into PIP mode whilst full screen #90

Open
jmurth1234 opened this issue Oct 9, 2024 · 0 comments
Labels
bug Something isn't working Groomed JWP team has reviewed the ticket and deemed it necessary

Comments

@jmurth1234
Copy link

Describe the bug
If you try to re-enter full screen from a player that was previously sent into PIP mode whilst full screen, the app crashes

To Reproduce

Steps to reproduce the behavior:

  1. Enable PIP on the player here https://github.com/jwplayer/jwplayer-react-native/blob/master/Example/app/jsx/components/Player.js#L25
  2. Open app and go to player
  3. Fullscreen the player
  4. Enter PIP (either via going to the home screen or the PIP button)
  5. Re-enter the application
  6. Attempt to enter full screen again

Expected behavior
The app does not crash

Screenshots / Visual evidence
If applicable, add screenshots or recordings to help explain your problem. (Required if reproduction is not 100% reliable)

Nova.Launcher.Screen.Recording.mp4

Desktop (please complete the following information):

System:
OS: macOS 15.1
CPU: (8) arm64 Apple M2
Memory: 217.17 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 22.4.0 - /opt/homebrew/bin/node
Yarn: 1.22.22 - /opt/homebrew/bin/yarn
npm: 10.8.1 - /opt/homebrew/bin/npm
Watchman: Not Found
Managers:
CocoaPods: 1.15.2 - /opt/homebrew/bin/pod
SDKs:
iOS SDK:
Platforms: DriverKit 24.1, iOS 18.1, macOS 15.1, tvOS 18.1, visionOS 2.1, watchOS 11.1
Android SDK: Not Found
IDEs:
Android Studio: 2024.1 AI-241.15989.150.2411.11948838
Xcode: 16.1/16B5014f - /usr/bin/xcodebuild
Languages:
Java: 17.0.12 - /opt/homebrew/opt/openjdk@17/bin/javac
npmPackages:
@react-native-community/cli: Not Found
react: 18.1.0 => 18.1.0
react-native: 0.70.14 => 0.70.14
react-native-macos: Not Found
npmGlobalPackages:
react-native: Not Found
(node:70011) [DEP0040] DeprecationWarning: The punycode module is deprecated. Please use a userland alternative instead.
(Use node --trace-deprecation ... to show where the warning was created)
Device(s) affected

  • Device:
  • OS: Android
  • Version: Varying

Additional context

10-09 18:29:35.868 25176 25176 I ViewRootImpl@608bc9c[]: handleResized, msg = 4 frames=ClientWindowFrames{frame=[152,448][1787,1477] display=[-100000,-100000][100000,100000] parentFrame=[0,0][0,0]} forceNextWindowRelayout=false displayId=0 dragResizing=false compatScale=1.0 frameChanged=false attachedFrameChanged=false configChanged=false displayChanged=false compatScaleChanged=false
10-09 18:29:35.869 25713 25713 I chromium: [INFO:CONSOLE(10)] "[core trigger] fullscreen", source: https://intercept.jw/assets/jwplayer/jwplayer.js (10)
10-09 18:29:35.869 25713 25713 D AndroidRuntime: Shutting down VM
10-09 18:29:35.869 25713 25713 E AndroidRuntime: FATAL EXCEPTION: main
10-09 18:29:35.869 25713 25713 E AndroidRuntime: Process: com.rnjwplayer, PID: 25713
10-09 18:29:35.869 25713 25713 E AndroidRuntime: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at android.view.ViewGroup.addViewInner(ViewGroup.java:5509)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at android.view.ViewGroup.addView(ViewGroup.java:5328)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at android.view.ViewGroup.addView(ViewGroup.java:5300)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at com.jwplayer.rnjwplayer.RNJWPlayerView$fullscreenHandler$2.run(RNJWPlayerView.java:625)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at android.os.Handler.handleCallback(Handler.java:958)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at android.os.Handler.dispatchMessage(Handler.java:99)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at android.os.Looper.loopOnce(Looper.java:230)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at android.os.Looper.loop(Looper.java:319)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at android.app.ActivityThread.main(ActivityThread.java:8919)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:578)
10-09 18:29:35.869 25713 25713 E AndroidRuntime: 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1103)
10-09 18:29:35.869 25713 25797 I ViewRootImpl@2c6c8d8[MainActivity]: mWNT: t=0xb4000070eda627d0 mBlastBufferQueue=0xb4000072cda58310 fn= 339 mRenderHdrSdrRatio=1.0 caller= android.view.ViewRootImpl$6.onFrameDraw:5635 android.view.ViewRootImpl$2.onFrameDraw:2146 android.view.ThreadedRenderer$1.onFrameDraw:792
10-09 18:29:35.880  1741  1768 V WindowManager: Relayout Window{179f7ae u0 com.rnjwplayer/com.rnjwplayer.MainActivity}: viewVisibility=0 req=1440x3200 ty=1 d0
10-09 18:29:35.880  1741  1768 D WindowManager: updateSystemBarAttributes: displayId=0, win=Window{179f7ae u0 com.rnjwplayer/com.rnjwplayer.MainActivity}, navColorWin=Window{179f7ae u0 com.rnjwplayer/com.rnjwplayer.MainActivity}, focusedCanBeNavColorWin=false, behavior=1, appearance=0, statusBarAppearanceRegions=[AppearanceRegion{ bounds=[0,0][1440,3200]}], requestedVisibilities=-9, from=com.android.server.wm.DisplayPolicy.finishPostLayoutPolicyLw:2320 com.android.server.wm.DisplayContent.applySurfaceChangesTransaction:6130 com.android.server.wm.RootWindowContainer.applySurfaceChangesTransaction:1180

JWP Ticketing
To expedite resolution and maintain confidentiality, submit a JWP request in addition to this new Issue. A JWP request offers the following benefits:

  • Associates the Issue with your company
  • Permits securely share sensitive information related to the bug, request, or question
  • Enhances JWP's ability to track progress and provide timely updates
  • Enables you to track and manage multiple issues through a single platform
ℹ️ While Issues are valuable for open-source collaboration, a JWP request ensures that you will receive clear timelines and efficient support.
@jmurth1234 jmurth1234 added the needs-grooming Has not been reviewed by codeowners for scope/validation label Oct 9, 2024
@Jmilham21 Jmilham21 added bug Something isn't working Groomed JWP team has reviewed the ticket and deemed it necessary and removed needs-grooming Has not been reviewed by codeowners for scope/validation labels Oct 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Groomed JWP team has reviewed the ticket and deemed it necessary
Projects
None yet
Development

No branches or pull requests

2 participants