If you don’t have enough powerful PC, most probably your build will take hours and it’s not a fact that you will succeed in the end.
On my PC which has the following configuration, building Android 10 takes ~ 25 minutes.
Let’s imagine you have an Awesome application 😉
Also, you have an Awesome Library which should be used in your Awsome application. The challenge is that the library has different versions and each version provides different functionality. But we want our Awesome application to work with all versions of Awsome Library.
How we can solve this challenge 🤔
Easy 🧐, with the help of Product Flavors.
Product Flavor allows you to create different versions or variants of your application in the same codebase. Product Flavors are a feature of Gradle Plugin used in Android Studio.
It’s easy to add flavor…
Recently I was working on a simple login layout. Nothing really special a
ConstraintLayout which has
LinearLayout, a few
Text View and
Button. A very common use case for most applications nowadays. So I took the first
EditText from the palette and dropped it into the
ConstraintLayout connecting it’s constrained and setting the width to
Looks pretty standard right? …
When you are working on the Android application, it's very important to deliver them to the users as fast as possible, so they can test and give you feedback. Google Play Console provides functionality to release an application for close/open beta channels, alpha channels, for internal testers and production. But the process of the release always takes some time and a few clicks, how we can improve this?
In the previous article, I showed how to integrate CircleCI
In this article, I will show how to integrate the Fastlane and completely automate the release process.
The very first step would…
CircleCI is a modern continuous integration and continuous delivery (CI/CD) platform. Let’s integrate it in the Perfectus application.
In order to start building Perfectus, first, we need to Sign Up, this can be done either with GitHub, GitLab, or Bitbucket accounts.
If you are using GitHub, then you can choose which repositories you what to build: All or Public. After selecting the type of repository you will be asked to authenticate yourself with the GitHub account.
In the last article, we learned how to set up Firebase for authentication with email and password 👇
Now it’s time for implementing authentication logic - Sign In, Sign Up, Sign Out and Reset Password in the Perfectus application using firebase auth.
First of all, let’s define an interface which will provide authentication functionality
As you maybe noticed, I am using suspend functions
A suspending function is just a regular Kotlin function with an additional
suspendmodifier which indicates that the function can suspend the execution of a coroutine. …
Show an AlertDialog while the application is starting, or after the application is finished. The key here is that AlertDialog should look like the System Dialog, means there should be nothing behind it.
it seems the solution should be an easy one … right? 🤔
My first thought was to show an AlertDialog right from the application onCreate() method, something like this
Easy, right? 🤯 Unfortunately, this doesn’t work at all, throwing an exception
You need to use a Theme.AppCompat theme (or descendant) with this activity.
Digging deeper into the Alert Dialog documentation 🧐, I found out that I…
Our perfectus application needs authentication method, firebase provides easy ways to handle Email/Password, Phone, Google, Facebook, and other authentication methods. In our case, we will use Email/Phone authentication, but I will also cover Phone, Google, and Facebook authentication in my next articles. So let’s start with creating a Firebase Project
To start implementing our Sign In functionality, first, let’s create a Firebase Project, to do that navigate to console.firebase.google.com, there press on “Add Project” button
Passing job interviews …
For some, it’s stressful, for some may be “not”.
But in general passing interviews is a skill, and to build this skill you need to start passing as many interviews as possible. Each time you will learn something new and that learning could be used in the next interview, life, job.
When I just started searching for a new job and passing my first interviews, I was super confident in my “knowledge”, I knew “everything” 😋 and everything was just 2% of “everything” 🤭, about the existence of other 98% I even can’t imagine 🤓. …