During the development of this project, I gained important knowledge about several Flutter and Dart concepts:
MaterialApp: Provides the main structure for the app, including navigation and themes.Scaffold: Used as the basic visual structure for the app's layout.SafeArea: Ensures UI elements are positioned within the safe display boundaries.ColumnandExpanded: Help organize widgets in a flexible vertical layout.TextButton: Utilized to create clickable buttons that trigger sound playback.
- I practiced creating functions to improve code structure and readability.
- The
playSongfunction was designed to handle audio playback efficiently:
void playSong(int songNumber) async {
await _player.play(AssetSource('nota$songNumber.wav'));
}- This helped me understand parameter passing and asynchronous programming using
asyncandawait.
- I learned how to integrate the audioplayers package for audio playback.
- I practiced initializing an
AudioPlayerinstance and calling its.play()method to load and play audio files.
- I improved my ability to identify and fix issues such as:
- Ensuring required parameters were properly defined.
- Correctly configuring asset paths in the
pubspec.yamlfile.
This project provided valuable hands-on experience with Flutter and improved my understanding of core development principles. 🚀