There are several ways to earn money from an app, one of them is ads. Flutter provides an official plugin for displaying ads inside applications, but it’s not what you would expect from an official plugin.

The official way to display ads inside Flutter applications is firebase_admob but it works like an overlay, this means that you should adapt your design in order to display ads without hiding anything of your app because ads will be rendered over your widget tree, covering everything that is under them. Overlays also need to have a fixed position over the screen so you can’t put them, for example, int scroll views.

Since I recently published Quake on the Google Play Store, I wanted to display some ads without annoying the user. The prettiest way was to display ads inside the layout like this:

Where I wanted to put ads.

So I started searching for a plugin that, unlike the official one, made it possible to display native ads. When ads are part of the widget tree you can do whatever you want to them like they were a normal widget, like adding padding, adding round corners, putting them into a ListView,…

I found admob_flutter which is an unofficial plugin made by Youssef Kababe. This plugin does exactly what we wanted to do, unfortunately its development is slow and the creator is searching for a new maintainer, but the base functions are working well, and we can display ads without breaking our beautiful designs.