Latest stories

Performing OAuth on Android with Custom Tabs

P

Whether we’re building third-party clients for existing API services, or working on our own product that communicates with our own API, it’s likely that we might be working with authentication that uses a form of OAuth. This standard of authentication approach is something that we’re bound to use at some point in our careers, but can often feel a bit tedious to implement in our...

Adding admob adverts to Flutter applications

A

In many applications that we build we want to offer some way to monetize the product. Be it through in-app purchases, subscriptions or even advertisements – these all provide a way for developers to monetize their application. We’ve long experienced, or implemented, ads through our Android and iOS applications, and now that we’re building Flutter apps we want to be able to do the same here too...

Exploring App Actions on Android: What are App Actions?

E

At Google I/O 2018 we were introduced to App Actions, but it was only at I/O this year that we were given the ability to hook into this functionality within our own apps. In this first part of articles focused on App Actions I want to take a quick look into exactly what they are, how they work and what they can do for our apps. Throughout the following articles we will look deeper into these...

Keeping cool in Android Q with the Thermal API

K

We’ve all been there are some point – using our Android device and things start to feel like they’re getting a bit warm in our hands. Whether we’re playing a game or using an application that is performing an intensive operation, these things can often require a lot of resources which makes our device work harder. In these kind of situations, applications should attempt to...

Exploring Android Jetpack: Preferences

E

Settings screens provide a way for our users to configure our application for the way in which they want it to look, feel and behave. As well as this, it’s also a great place for us to provide links to external information such as privacy policies, open-source licences and more. Whilst we can build these screens ourselves, there can often be a lot of boilerplate for what seems like such a simple...

Adding in-app purchases to Flutter apps

A

In many applications that we build we want to offer some way to monetize the product. Be it through subscriptions, one-off purchases or upgrades – these all provide a way to offer more value to our users. We’ve long done this through our Android (via Google Play) and iOS (via iTunes) applications, and now that we’re building Flutter apps we want to be able to do the same here...

Our favourite things from Google I/O 2019

O

This year I was lucky enough to attend Google I/O with some great company. Over the course of the event we attended many sessions, so we decided to write a short post together on our favourite parts from the event. Note: These are just a few of our favourite events. Be sure to check them all out, here! Android Jetpack: Understand the CameraX Support Library Joe (Android GDE @ Buffer) If you’ve...

Exploring Flutter Packages: Date Time Picker

E

When it comes to developing applications, theres often some form of component or functionality that you need that doesn’t quite come as standard. In this new series I want to share some of the Flutter packages that I’ve been using in my projects – this is in the hope that it will help you to discover what’s out there to use in your projects, celebrate the work of the...

Exploring CameraX on Android: Use Cases

E

In my last article we introduced the CameraX API, along with the Camera View component found within the source of the project. In this article we’re going to dive into the second part of the CameraX API – the core library to learn what it is and how we can make use of the functionality that it provides for our applications. Camera Core Use Cases The Core library brings us the concept of...

Exploring CameraX on Android: Camera View

E

If you’ve ever used the Camera APIs on Android, you may have felt that they’ve never been the simplest thing to implement. There was originally the Camera API, which was deprecated in favour of the Camera2 API – this iteration aimed to provide developers with a better experience when dealing with camera APIs on Android. However, with this there was still a lot of boilerplate...