Book Image

Flutter for Beginners

By : Alessandro Biessek
Book Image

Flutter for Beginners

By: Alessandro Biessek

Overview of this book

Google Flutter is a cross-platform mobile framework that makes it easy to write high-performance apps for Android and iOS. This book will help you get to grips with the basics of the Flutter framework and the Dart programming language. Starting from setting up your development environment, you’ll learn to design the UI and add user input functions. You'll explore the navigator widget to manage app routes and learn to add transitions between screens. The book will even guide you through developing your own plugin and later, you’ll discover how to structure good plugin code. Using the Google Places API, you'll also understand how to display a map in the app and add markers and interactions to it. You’ll then learn to improve the user experience with features such as map integrations, platform-specific code with native languages, and personalized animation options for designing intuitive UIs. The book follows a practical approach and gives you access to all relevant code files hosted at github.com/PacktPublishing/Flutter-for-Beginners. This will help you access a variety of examples and prepare your own bug-free apps, ready to deploy on the App Store and Google Play Store. By the end of this book, you’ll be well-versed with Dart programming and have the skills to develop your own mobile apps or build a career as a Dart and Flutter app developer.
Table of Contents (21 chapters)
Free Chapter
1
Section 1: Introduction to Dart
5
Section 2: The Flutter User Interface - Everything is a Widget
10
Section 3: Developing Fully Featured Apps
15
Section 4: Advanced Flutter - Resources to Complex Apps

A plugin project structure

In the previous section, we generated a plugin project to start analyzing. Now let's take a look at specific parts of it. The project is the default plugin example from Flutter; the only thing it does is return the platform OS version of the running device.

There are some differences, though:

  • The contents of the ios/ and android/ folders does not contain native applications that start the Flutter runtime. Instead, it simply contains native classes that are entry points to specific native implementations. We will check this in detail later.
  • The example/ directory is a simple Flutter application package—yes, a subpackage inside the plugin package.
  • lib/hands_on_show_toast.dart is a Dart API for the plugin:
// pubspec.yaml

name: hands_on_platform_version
description: A new flutter plugin project.
version: 0.0.1
author:
homepage:

environment:
...