flowkey / UIKit-cross-platform

Cross-platform Swift implementation of UIKit, mostly for Android
MIT License
594 stars 40 forks source link

Downgrade ExoPlayer to v2.13.2 to match react-native-video version #354

Closed mouselangelo closed 2 years ago

mouselangelo commented 2 years ago

See: https://github.com/flowkey/mobile-app/pull/2254 See https://github.com/flowkey/NativePlayer/pull/939

Type of change: chore

Motivation (current vs expected behavior)

The latest react-native-video uses ExoPlayer v2.13.2 - while our current fix-touch branch uses v2.13.3- it might be good to align these versions.

Note that our current production app uses v2.11.7 so we are not really rolling back to an older version as far as users are concerned.

Release notes for v2.13.3

Please check if the PR fulfills these requirements

michaelknoch commented 2 years ago

Interesting, so it was even more out of sync but it didn't crash

mouselangelo commented 2 years ago

Interesting, so it was even more out of sync but it didn't crash

@michaelknoch - so the reason it was crashing is that v2.13.2 had some breaking changes in the API from the previous v2.11.7. You can see this in https://github.com/flowkey/UIKit-cross-platform/commit/f8cb41875a3d7a6fa726170e48c68cf0498bd5ac

They introduced the Builder pattern and deprecated some constructors and also changed some methods. Surprisingly they just removed some methods that could be previously used. Example: The call to AdaptiveTrackSelection.Factory(bandwidthMeter) - no longer accepts bandwidthMeter

Erik had already fixed this - but we are just using an older commit in the NativePlayer- which should be resolved by https://github.com/flowkey/NativePlayer/pull/939

PS: The current UIKit that NativePlayer references to uses ExoPlayer v2.11.7