As we have seen, developing full-featured Flutter apps relies on using one or more packages shared by the community in the Flutter/Dart ecosystems. Developing everything from scratch would be impractical for most applications, as we would have to repeatedly develop platform-specific code, which makes the development cycle longer and slower.
The Flutter and Dart ecosystems provide tools to help this contribution occur with no difficulties. The process of developing and publishing a package is done in the Flutter environment.
In this chapter, we are going to generate a simple Flutter plugin project and analyze its structure. The generated plugin contains a Flutter example that has a single method to get the platform version, that is, the currently running operating system version. This is a simple plugin that does not have anything special, but...