Exploring Firebase UI on Android: Authentication

Firebase UI provides us with a collection of utilities that make it easier to implement common UI components within applications. Firebase authentication provides us a way for our users to validate their identity, without the need to implement all of the back-end work ourselves. hen compared to interacting with the authentication APIs directly, Firebase Authentication UI handles a lot of things for us out of the box: All API request required to communicate with Firebase Authentication services All of the UI around authentication for each of the different service providers (email signup forms, phone number verification etc) Automatic handling of…

Digging into failed redirects within Android Webviews

  Header Photo by The Nigmatic on Unsplash Discovering the issue It was the 14th December and we were winding down ready for the Christmas break. Our code freeze had kicked in several days previously and we had shipped an update at that time to get a couple of priority bug fixes before the holidays. We are currently working on some bigger updates on our beta branch, so there hasn’t been any bigger updates merged into master recently — so all should be good for us to settle down, right? At the start of the week we had about two reports of failed…

Exploring the Android Fragment Scenario component

I’m always curious about what tools and features are coming up next in android — and to be sure I don’t miss out on any of this I like to keep an eye on release notes over on the android developer site. Two that caught my eye recently where the fragment-1.1.0-alpha01 and fragment-testing-1.1.0-alpha01 releases, within the testing side of things we see a new FragmentScenario component which provides us with an easy way to test our fragments in isolation. In this post I want to take a quick dive into this so we can get it integrated into our application tests. Note:…

Android Networking with Coroutines and Retrofit

Recently I’ve been reading up on, watching talks on and been generally getting more curious about Kotlin coroutines. Now that they are stable with the release of Kotlin 1.3 it felt like about time to start diving in an play with converting my existing RxJava code over to using coroutines. In this post, we’re going to focus on how we can take an existing network request flow and convert it over to using coroutines instead of RxJava. Now to be honest, before I got into the practical side of coroutines I thought there were going to be a lot of…

Exploring Google Play App Signing

When distributing our Android Applications we’ve always been required to sign our APK using a keystore for our application — this has allowed us to ensure that only the developer(s) of our app are able to upload updated APKs to the play console. However, because this keystore acts as a fingerprint to the lifecycle of our application — if anything was to happen to this then we hit a bit of a tricky situation. Because of the disadvantages that the current signing process brings, Google Play App Signing is here to help make things smoother. In this article I want to dive into this…

Building HashTrack with Flutter: Authentication logic

If you haven’t check out the previous post in these series, then you can do so here: Building HashTrack with Flutter: Intro and setup Building HashTrack with Flutter: Main class and Localization setup You can also find the code for this guide here: Now that we have the foundations of our application built, we’re going to go ahead and setup the first screens which will be shown to the user when opening the app — the authentication screens. This is going to require us to create and configure several different components: A sign-in screen — Providing a button that allows the user to sign-in…

Exploring Android P: Enhanced Notifications

With Android P now out in the wild, there are a bunch of new features and APIs which have become available for us to make use of in our applications. Some of these new features fall under the notification APIs, allowing us to create more contextual and detailed notifications for our applications. In this post, I want to dive into the new notification enhancements that have been added to the Notification APIs. This enhancement for notifications is focused around the display of messages within the notification content. The first part that we’re going to look at is the display of…