commit | 3c7209408af83a89943d2074862f070d1665023f | [log] [tgz] |
---|---|---|
author | stuartmorgan <stuartmorgan@google.com> | Sun Sep 04 00:21:55 2022 -0400 |
committer | GitHub <noreply@github.com> | Sat Sep 03 21:21:55 2022 -0700 |
tree | 69aefab8e9062cd281dd077c23712569d60ffe0a | |
parent | 644d85be6adedbe8f56cbb3c5efb6cdabe78e50f [diff] |
[video_player] Remove default method channel implementation (#6341) Eliminates `MethodChannelVideoPlayer`, and instead makes the default a no-op subclass of the interface (i.e., one that throws `UnimplementedError` for everything). This moves the plugin from option 3 to option 2 in https://docs.flutter.dev/go/platform-channels-in-federated-plugins. This implementation is being removed because its use of Pigeon made ongoing maintenance impractical. Since default implementations are intended for backward compatibility with third-party native-only implementations, the platform channel internals of default implementations are considered part of the API surface. Pigeon considers those details implementation details, which means it was impossible to ever update the version of Pigeon used here without breaking changes. This means that fundamentally, Pigeon is not a viable choice for default implementations. The alternative to removing it would be replacing it with a new non-Pigeon method channel implementation, but that would also be a breaking change, defeating the purpose of backward compatibility. This would only benefit new third-party implementations, but new implementations should implement the platform interface rather than using the legacy default implementation. Fixes https://github.com/flutter/flutter/issues/110017
This repo is a companion repo to the main flutter repo. It contains the source code for Flutter first-party plugins (i.e., plugins developed by the core Flutter team). Check the packages
directory for all plugins.
Flutter plugins enable access to platform-specific APIs. For more information about plugins, and how to use them, see https://flutter.dev/platform-plugins/.
These plugins are also available on pub.
Please file any issues, bugs, or feature requests in the main flutter repo.
Issues pertaining to this repository are labeled “plugin”.
If you wish to contribute a new plugin to the Flutter ecosystem, please see the documentation for developing packages and platform channels. You can store your plugin source code in any GitHub repository (the present repo is only intended for plugins developed by the core Flutter team). Once your plugin is ready, you can publish it to the pub repository.
If you wish to contribute a change to any of the existing plugins in this repo, please review our contribution guide, and send a pull request.
These are the available plugins in this repository.