ezone
  • Home
  • Blog
    • Cloud ERP
  • Flutter
    • FlutterFlow
  • Joomla
  • About

Learning Flutter

Wait, what is Flutter™ ?

A framework for simultaneous publication of apps for Apple and Google Android devices

Flutter is an open source framework by Google for building beautiful, natively compiled, multi-platform applications from a single codebase.

I create mobile applications that can be published in the App Store and Google Play. I'm not a hard core developer, I have professional developers working with me in my clients and contracted work. But I am a product manager / interim CTO.

It seemed to me that going through the whole process of app creation and management and documenting it for others would be useful. I've been writing requirements and producing mobile applications for decades but I thought I'd like to learn at a far deeper level about Flutter just for fun and because cross platform applications are something I have a passion for. This is my learned experience of picking up these development tools and seeing what I can do.

Books

You might enjoy printed books. If you do then this one would be a strong pick - Flutter for Beginners: An introductory guide to building cross-platform mobile applications with Flutter 2.5 and Dart, 2nd Edition. As is Flutter Projects: A practical, project-based guide to building real-world cross-platform mobile applications and games (both on Amazon UK).

Flutter starter app running on iPhone 14 Pro simulator on macOS Ventura (Intel)
Flutter starter app running on iPhone 14 Pro simulator on macOS Ventura (Intel)

Of course, one does not simply publish an app.

In order to publish an app you have to plan, code, build, test, publish, operate, monitor, manage and update it. This is a familiar pattern these days, its sometimes called 'devops', and it can't be avoided, for if you skip elements of it then updating your app or managing it might become impossible over time. You don't want that! So while this collection of articles is based around Flutter it is also about all the surrounding disciplines that need to be considered as part of development and operating a cross platform mobile application and the inevitable platform behind it.

Flutter tech notes and demos

Adding Google as a Sign-in provider

Adding Google as a Sign-in provider

Build and publish a Flutter-based app for the App Store and Google Play — updated for 2026 with the latest Firebase and Flutter tooling.

Once you have a user signed in, you can open your mobile app to personalisation based on that individual. Google Sign-in remains one of the most frictionless ways to get there, especially for Android users — but the setup steps have evolved, and the tooling has improved considerably.

TL:DR – We now have an authenticated user connected to Google Firebase and its Cloud Firestore database. This instalment extends the app to actually do something with that connection, starting with wiring up Google as a sign-in provider.

Details
Last Updated: 29 July 2026

Read more: Adding Google as a Sign-in provider

Sign in with Apple from Pub.Dev Package Manager for Flutter

Sign in with Apple from Pub.Dev Package Manager for Flutter

Build and publish a Flutter-based app for the App Store and Google Play — updated for 2026 with the latest package versions and platform requirements.

Introducing plugins from pub.dev, and specifically how to add Sign in with Apple to your Flutter app today.

TL:DR – Now that we have authentication connected to Google Firebase and its Cloud Firestore database, let's extend our app to allow Sign in with Apple too. The sign_in_with_apple package has matured considerably since this series began and is now on version 8.0.0, with full support across Android, iOS, macOS, and Web.

Details
Last Updated: 29 July 2026

Read more: Sign in with Apple from Pub.Dev Package Manager for Flutter

Source Code control with Git from Mac to Chromebook

Source Code control with Git from Mac to Chromebook

This is part of a journey to build and publish a Flutter based app for the App Store and Google Play — updated for 2026 with current tooling, workflows, and platform guidance.

At some point in any serious project, source code control stops being optional. If you're working across more than one machine — or simply want a safety net — Git is the answer.

TL:DR – This article covers Git setup and daily use across macOS and Chrome OS in 2026, including what's changed with authentication, tooling, and the Chrome OS Linux environment.

Details
Last Updated: 29 July 2026

Read more: Source Code control with Git from Mac to Chromebook

Customising the Firestore Quickstart

Customising the Firestore Quickstart

Customising the Firestore Quickstart for 2026

Adapting the FriendlyEats quickstart and connecting it to the Firebase Local Emulator Suite

In this walkthrough, we take the Firestore quickstart — part of the actively maintained quickstart-js repository on GitHub — and reshape it into a working web admin app for a FlutterFlow-based mobile app backed by Firebase. As of 2026, the quickstart-js repository has been migrated to TypeScript and continues to receive regular updates, so some of what you find there will look a little different from older tutorials.

TL:DR – This article focuses on the practical modifications needed to turn the FriendlyEats quickstart into a custom admin app for a Firestore database. It also covers connecting that app to the Firebase Local Emulator Suite so you can experiment safely without touching production data. In the end I didn't pursue this particular approach beyond the prototype stage — but the process taught me a great deal, and the steps here are still valid and useful in 2026.

Details
Last Updated: 29 July 2026

Read more: Customising the Firestore Quickstart

Colour palette for a new app

Colour palette for a new app

Im working on a new app, codename thistle, and before I can really get going the app needs a colour palette. This a blocking issue for me in that I find it difficult to focus on the rest of the app before the colours are set. I know I might review them later but colours need to be consistent enough for my working environment and for test builds. I used some interesting tools on the way so thought I would share.

Colours are completely subjective but it is possible to follow some rules on devices and on screens to make them look nice. Colours also need to respect accessibility guidelines. Even if you are not a designer, you can make sensible choices and not let the best be the enemy of the good.  If you build a good app you'll get to invest in colours and themes once you've proved the point and got some adoption.

TL:DR – Tools help you partially automate the colour schemes for your app. Here are my favourites.

Details
Last Updated: 29 July 2026

Read more: Colour palette for a new app

Rebuilding 928uk® in Flutter

Rebuilding 928uk® in Flutter

After three years on FlutterFlow's managed build service, we relaunched 928uk as a hand-rewritten Flutter app this month, published to both the App Store and Google Play via their respective review processes. The work spanned several weeks and the end result is: a clean codebase, a self-hosted CI/CD pipeline, and learning a stack of small App Store-review compliance items that you only learn about by tripping over them. Here is the shape of the journey. 

TL:DR – Two weeks to refactor a and publsh a mobile app in Flutter with repeatable local control of automated builds.

Details
Last Updated: 29 July 2026

Read more: Rebuilding 928uk® in Flutter

Wiring AdMob in Flutter: Eight Hashes for Two Apps

Wiring AdMob in Flutter: Eight Hashes for Two Apps

In 2026, integrating AdMob into your Flutter applications has become a more streamlined yet nuanced process. Ongoing updates in both the Flutter ecosystem and AdMob itself, make it crritical that developers ensure test ads are served correctly and reliably on test devices. This article outlines our experience implementing AdMob banners in two Flutter applications, porjects parchment and linen, while addressing the challenges we faced along the way and how to effectively resolve them.

Our two apps are still in production: parchment (a community app) and linen (a citizen-reporting tool). Both are built with Flutter, released via TestFlight and Google Play, and utilise Firebase along with Fastlane + Gitea CI for continuous integration. Recently, we integrated google_mobile_ads banners into both applications. Our testing devices include physical Google Pixel phones, and physical iPhones, test builds are delivered via Google Play Internal Test track and TestFlight respectively. With two apps and several devices, we faced the challenge of marking each device-app pairing as a test device for AdMob to avoid serving real ads during our internal testing, which could lead to violations of AdMob's policies regarding invalid traffic.

TL:DR – Managing test devices for AdMob is much harder than it should be in 2026. It is far too easy to serve live adverts to test devices and risk a policy violation.

Details
Last Updated: 29 July 2026

Read more: Wiring AdMob in Flutter: Eight Hashes for Two Apps

FlutterFlow - Low code app builder based on Flutter

Page 4 of 4

  • 1
  • 2
  • 3
  • 4

Popular articles about Flutter

  • Java on macOS Sequoia - especially for android app
  • Getting started with Flutter on a Mac
  • Export compliance and the App Store
  • Building a Flutter Barcode Scanner app
  • Flutter development on a Chromebook
  • Using Cloud Firestore 
  • Getting the latest YouTube video for a Flutter app
  • Using Google Sheets in a Flutter app
  • Dark and light appearance in mobile apps
  • Sign in with Apple from Pub.Dev Package Manager for Flutter
  • Bad CPU type in executable Error: Unable to 'pub upgrade'
  • Making mobile apps look better - theme and colours
  • Starting from a sample in Flutter
  • Setting up Firebase Firestore
  • Adding Google as a Sign-in provider
Add as a preferred source on Google

Recent articles

  • Building for One, Part twelve: Joomla as the household's front door
  • Building for One, Part eleven: two days between finished and in review
  • Building for One, Part ten: the chime that follows her out of the app
  • Building for One, Part nine: the free tablet and the paid household
  • Building for One, Part eight: why Daysome is not peer to peer
  • iPhone 18 Pro Max: Which Features Actually Justify an Upgrade
My Blog
  • Terms of use
  • Privacy statement
  • Contact us
  • Sitemap
  • Joomla! — award-winning content management system (CMS)
  • Flutter — An open source framework for building applications from a single codebase