ANSWER
1.Native applications are applications that are built with a specific programming language for a particular platform. A popular example is the use of the Objective-C or Swift programming language for the iOS (Apple) platform. The Android platform uses the Java programming language. Hybrid apps are web apps that are transformed into native code on platforms like iOS or Android. Hybrid applications usually use a browser to allow web applications to access various features on mobile devices such as Push Notifications, Contacts, or Offline Data Storage. Some tools for developing hybrid applications include Phonegap, Rubymotion and others.
2.State Management is a way to manage the data / state we work, it can also be to separate logic and view where the logic can also be re-usable.
The way State Management works is like Provide and Listen, meaning that we can enter a state that may change at any time, then the Subscribe (Listen) Widget with the Provider that we created will change according to the changing state.
State Management has many Packages / Libraries that we can use for it, which are like:
Bloc Provider Redux GetIt and many more, to check all State Management can be seen at Flutter.dev – State Management.
SCRENSHOOT OF PROGRAM RESULTS
Download weather app source code on GitHub
Provides the list of the opensource Flutter apps collection with GitHub repository.