Skip to content

[bug] Native Crashes #493

@chrismclarke

Description

@chrismclarke

(copied from slack - to tidy up)

For the issues coming from 4.7-4.8, most are the native video player which is a bit of a pain because hard to make updates. The project seems completely abandoned (transferred maintainer once but new maintainer is unresponsive - I raise a Github Issue

There is another native player which someone created that uses more modern android features, although I don't think it will be easy to migrate. So likely will need to use fork of the video player and try fix there, although it's quite a lot of work so probably won't dive into it until some time next year

Image Image

It looks like this new issue related to splash screen shown on older devices could probably be fixed

If interested you could first test to see if you can get any videos working with:
https://github.com/eduardoRoth/media-player
It is loosely based on the original capacitor-video-player, but not directly compatible so would probably need quite a lot of code refactoring if we wanted to replicate all the same current behaviour. But could work as a test in a new component with hardcoded video file to experiment. I think the main features we need are:

  • Able to start full screen playback on click of a button
  • Able to start playback at a particular timestamp (e.g. resume watching)
  • Store the timestamp when video is paused or closed

But we could also test with a fork. I made one previously, added support for latest capacitor (7), added an example app for better developer experience, and used AI to try and fix a couple recurring crash bugs:
https://github.com/chrismclarke/capacitor-video-player

But there would still be quite some challenge if we want to update the core android media components. The current player uses an outdated Exo Player v2 which was deprecated in 2024 in favour of the newer Jetpack Media3 api. They published a migration guide here: https://developer.android.com/media/media3/exoplayer/migration-guide

So yeah that's our 2 main options

  1. Try to use different project which is more actively maintained (for now at least)
  2. Try to use a custom fork

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

Status

Review

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions