Skip to content

[BUG] [Android] [iOS] Inconsistent behaviour in the PIP mode with multiple videos on the same screen #195

@shivamapp8

Description

@shivamapp8

Describe the bug
When multiple videos are present on a single screen, the Picture-in-Picture (PiP) behavior breaks on both platforms.
On Android, the app crashes immediately after tapping Expand on the PiP window.
On iOS, after switching one video into and out of PiP, the other video players’ PiP buttons become inactive and their video showing black screen when its play

To Reproduce
Reproduction code: https://gist.github.com/shivamapp8/2f26b5eead2bf59a5ff906ed639accee

Steps to reproduce the behavior:
iOS:-

  1. Play the first video.
  2. Move the first video into PiP.
  3. Restore it back to its inline position.
  4. Observe: PiP buttons on other video players are now inactive and Playing another video results in a black screen.

Android:-

  1. Play the first video.
  2. Move it to PiP.
  3. Tap the Expand button on the PiP window.
  4. The app crashes instantly.

Expected behavior
iOS

  • Other video players’ PiP buttons should remain functional.
  • Other videos should play normally, without turning into a black screen.

Android

  • Expanding PiP should restore the video gracefully, without crashing the app.

Screenshots / Visual evidence
Android:
https://github.com/user-attachments/assets/09c5d2b4-7089-4e49-9a6f-923f73827fc0

iOS:
https://github.com/user-attachments/assets/c0cd0d83-4fd1-41d1-85a3-4be19494888f

Desktop (please complete the following information):
If you are having a build issue, we would like to know about your machine.
npx react-native info info Fetching system and libraries information... System: OS: macOS 15.5 CPU: (10) arm64 Apple M4 Memory: 105.28 MB / 16.00 GB Shell: version: "5.9" path: /bin/zsh Binaries: Node: version: 20.19.5 path: /Users/user/.nvm/versions/node/v20.19.5/bin/node Yarn: version: 1.22.22 path: /opt/homebrew/bin/yarn npm: version: 10.8.2 path: /Users/user/.nvm/versions/node/v20.19.5/bin/npm Watchman: version: 2025.07.28.00 path: /opt/homebrew/bin/watchman Managers: CocoaPods: version: 1.16.2 path: /opt/homebrew/bin/pod SDKs: iOS SDK: Platforms: - DriverKit 24.5 - iOS 18.5 - macOS 15.5 - tvOS 18.5 - visionOS 2.5 - watchOS 11.5 Android SDK: Not Found IDEs: Android Studio: 2025.1 AI-251.25410.109.2511.13752376 Xcode: version: 16.4/16F6 path: /usr/bin/xcodebuild Languages: Java: version: 17.0.16 path: /usr/bin/javac Ruby: version: 2.6.10 path: /usr/bin/ruby npmPackages: "@react-native-community/cli": installed: 18.0.0 wanted: 18.0.0 react: installed: 19.0.0 wanted: 19.0.0 react-native: installed: 0.79.1 wanted: 0.79.1 react-native-macos: Not Found npmGlobalPackages: "*react-native*": Not Found Android: hermesEnabled: true newArchEnabled: true iOS: hermesEnabled: true newArchEnabled: true

Device(s) affected

  • Device: Samsung Galaxy M31 and iPhone 16
  • OS: Android 12 and iOS 18.5
  • Version : @jwplayer/jwplayer-react-native": "1.2.0"

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-groomingHas not been reviewed by codeowners for scope/validation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions