Android Tutorial - Learn Android Development
Learn Android development, Kotlin, basic to most advanced through the tutorial designed by the top developers across the globe. Millions of developers are learning at MindOrks.

Guided Online Course

All Free Android Tutorials by MindOrks

Programming - Java & Kotlin
Learn the basics of Java programming language. The basics of Java programming language is a must for Android Development. To get the most out of the Kotlin, Java knowledge is necessary. Learn the basics of Kotlin programming language. As now, Kotlin is officially the first-class language for Android app development, learning Kotlin is very important.
LinkDescription
Java Tutorial For Beginners - Learn Java From BasicsIn this video tutorial, we will learn how to get started with Java from basics.
Kotlin Tutorial - Learn KotlinIn this video tutorial, we will learn how to get started with Kotlin from basics.
Why You Must Try Kotlin For Android Development ?Kotlin is a statically typed programming language for the JVM, Android and the browser.
Understanding open Keyword in KotlinIn this tutorial, you will learn about open keyword in Kotlin. You will get to know how and when to use open keyword in Kotlin.
Learn Kotlin Visibility Modifiers — private, protected, internal, publicIn this tutorial, we will learn about visibility modifiers in Kotlin. In Kotlin, we have four visibility modifiers i.e. private, protected, internal, and public. We have created a detailed tutorial on the same.
Learn Kotlin — Returns, Jumps & LabelsIn this tutorial, we will learn the concept of labels and jumps in Kotlin. We will see the types of jump expressions that are used in Kotlin.
How to convert a Kotlin source file to a Java source file?In this tutorial, we will learn how to convert a Kotlin source file to a Java source file. We will do the file conversion by two methods. So, let's see how.
Property, Getter, and Setter  - KotlinIn this tutorial, we will learn about Property, Getter, and Setter in Kotlin. We have a detailed explanation of Getter and Setter in this tutorial.
Safe calls(?.) vs Null checks(!!) in KotlinIn this tutorial, we will learn about Safe calls(?.) and Null Checks(!!) in Kotlin. Both are used to avoid NullPointerException in Kotlin. So, let's see how we can use these in our code.
@JvmStatic, @JvmOverloads and @JvmField in KotlinIn this tutorial, we will learn how we can use the Kotlin code in our existing Java code with the help of @jvmStatic, @JvmOverloads and @JvmField in Kotlin.
How to create a singleton class in Kotlin?In this tutorial, we will learn how to create a singleton class in Kotlin? If you don't know anything about the singleton class then don't worry, we will cover every part of the singleton class.
Companion object in KotlinIn this tutorial, we will learn about the concept of companion object that is used to call the members of a class with the help of class name and not by making an instance of the class.
Code Formatting in Kotlin using ktlintIn this tutorial, we will learn how to format your Kotlin code using ktlint in our project. ktlint is a tool that is used to check if our Kotlin code is according to the Kotlin code standards or not. If not, then it will format the code for you. So, let's learn how to do that.
Understanding Init block in KotlinIn this tutorial, we will understand about init block and how can we use it.
Pair and Triple in KotlinIn this tutorial, we will learn how to use Pair and Triple in Kotlin. Pairs and Triples can be used in Kotlin to return two or three variables of same or different types of variables, respectively.
ForEach in KotlinIn this tutorial, we will learn about forEach in Kotlin. We will compare it to For Loop and make you understand by an example
Replace Switch with When in KotlinIn this tutorial, we will learn how to use when instead of switch in Kotlin. We will see some examples to understand the usage of when in the best possible way.
Primary and Secondary Constructors in KotlinIn this tutorial, we will learn about Primary and Secondary Constructors in Kotlin. Unlike other object-oriented languages, Kotlin has two types of constructors. So, in this tutorial, we will learn how to use them.
Learn Kotlin — Extension FunctionsAs the name implies, the extension functions are the functions that help us to extend the functionality of classes without having to touch their code.
Learn Kotlin- Destructuring DeclarationsDestructuring is a convenient way of extracting multiple values from data stored in (possibly nested) objects and Arrays. It can be used in locations that receive data (such as the left-hand side of an assignment).
Learn Kotlin - Data ClassWe frequently create a class to do nothing but hold data. In such a class some standard functionality is often mechanically derivable from the data. In Kotlin, this is called a data class and is marked as data.
Learn Kotlin —  Sealed ClassesFrom the documentation: Sealed classes are used for representing restricted class hierarchies, when a value can have one of the types from a limited set, but cannot have any other type. They are, in a sense, an extension of enum classes: the set of values for an enum type is also restricted, but each enum constant exists only as a single instance, whereas a subclass of a sealed class can have multiple instances which can contain state.
Learn Kotlin —  apply vs withThere are many great features available in Kotlin, we can take advantage of all these features to write the better application in Kotlin. Among all those features, apply and with are important feature. We must know when to use which one.
Learn Kotlin —  lateinit vs lazyThere are many great features available in Kotlin, we can take advantage of all these features to write the better application in Kotlin. Among all those features, lateinit and lazy are important property initialization feature. We must know when to use which property initialization.
Android KTX - Android development with KotlinIn this tutorial, we will learn how to implement the Android KTX feature of the Android Jetpack that was announced in the Google I/O 2018. We will learn how Kotlin will help us to write the same code and use the same APIs used in Java in a much easier and faster way.
Android Studio
Learn how to use Android Studio which is the recommended IDE for Android Development by Google. Learn about Android Studio IDE Overview, Project Structure — Java/Kotlin, XML.
LinkDescription
Install Android StudioIn this tutorial, we will learn how to install Android Studio in our system. We will learn how to download and install Android Studio in Windows, Mac, and Linux. Also, we will learn how to enable developer option in our mobile device.
Android Studio Tutorial For BeginnersThis tutorial is for those who are starting Android development and are facing some problem while using Android Studio. We have created a full tutorial of Android Studio for Beginners.
Build your first Android application in KotlinIn this tutorial, we will learn how to create and run your first Android application in Kotlin with the help of Android Studio. We will learn how to create an emulator in Android Studio and how to run applications on an emulator and on mobile devices.
Tips and Tricks of Android StudioIn this tutorial, we will learn about some of the Tips and Tricks of Android Studio. This is very important because a machine can do a lot of things if the operator, operating the machine knows how to use it efficiently. Same is with Android Studio. Using some shortcuts will help us in making projects in a lesser time than ever.
Android Components
Learn about the Activity Lifecycle, Tasks & Back Stack, Service, Content Provider.
LinkDescription
Android Activity and its LifecycleIn this tutorial, we will learn about Activities in Android. In this, we will learn how to create an activity and what is the lifecycle of activity in detail. We will also learn about Intents and how to navigate from one Activity to another.
How to implement Splash Screen in Android?In this tutorial, we will learn about two ways to implement the SplashScreen. One is by using Handler and other is by using RxJava.
Using LocalBroadcastManager in AndroidIn this tutorial, we will learn about LocalBoradcastManger. We will learn what the LocalBroadcastManager is and how we can use this in our Android project.
Service vs IntentService in AndroidIn this tutorial, we will learn the difference between Service and IntentService. Services are used to perform some tasks in the background without using the UI of the application and at the same time, you can use other applications parallelly.
Understanding the Application Lifecycle in AndroidIn this tutorial, we will learn about the Application life cycle in Android. We will learn how to make use of various application states that a particular application has in general.
Android Content Provider in KotlinIn this tutorial, we will learn about Content Provider in Android. Content Provider is one of the Android Component helps to access data of other apps. We will be learning Content Provider implementation in Kotlin.
Android Task and Back Stack ReviewAndroid Activities are the logical construct of the screens that we want a user to navigate through. The relation that each Activity holds with respect to other is very crucial for a good user experience.
Intents
Learn about Intents and its types.
LinkDescription
What are intents in Android?In this tutorial, we will learn about Intents in Android. Intents are used to communicate between various components in Android application. If you are new to Android then this is the must-read tutorial. Also, if you have done Application development in Android, then you will learn various new things about Intents. So, let's learn together the concept of Intents in Android.
Static User Interface
Learn about some of the Static User Interfaces such as Button, ImageView, TextView, EditText, and etc.
LinkDescription
Android User Interface — View ComponentsIn this tutorial, we will learn about the Android User Interface. We will learn about various view components like Button, TextView etc provided by Android Studio. So, let's get started.
Android Layouts - Relative/Linear/FrameIn this tutorial, we will learn about various layouts in Android. We will learn about LinearLayout, RelativeLayout, and FrameLayout. We will learn all these with the help of some examples.
Using Constraint Layout in AndroidGoogle introduced ConstraintLayout, a new layout for Android at their I/O developer event this year. ConstraintLayout combines a simple, expressive and flexible layout system with the powerful features built into the Android Studio Designer tool. It makes it easier to create responsive user interface layouts that adapt automatically to different screen sizes and changing device orientations.
Best Practices for Using Text in AndroidIn this tutorial, we will learn some of the best practices od using text in Android. This is very important because we know that almost 70% of the application is covered by text. So, the performance of the application majorly depends on the texts present in it. We have created a detailed tutorial of the same.
Android TextView Decoration TutorialIn this tutorial, we will learn how to decorate TextView in Android. We will use both XML and Kotlin code for TextView decoration. So, read this tutorial and use it in your Android project.
What is tools:context in Android layout files?In this tutorial, we will learn about tools:context attribute that is present in every layout file by default.
Using Coordinator Layout in AndroidIn this tutorial, we will learn how to use Coordinator Layout in Android. Coordinator Layout is super-powered FrameLayout that is used to handle the physical transactions or animations between various views present in a particular Activity.
AutoSizing TextView Implementation for AndroidIn this tutorial, we will learn how to autosize the textview. We will learn how to make the TextView scalable according to the size of the container. We have created a complete tutorial of Autosizing the textview.
Dynamic User Interface
Learn about some of the Dynamic User Interfaces such as RecyclerView, ViewPager, and etc.
LinkDescription
Android ReyclerView in KotlinIn this tutorial, we will learn about the RecyclerView in Android.
Android ViewPager in KotlinIn this tutorial, we will learn about the ViewPager in Android.
Exploring Android ViewPager2 in AndroidAs Google introduced a new ViewPager called the ViewPager2 with some cool features like vertical orientation, use of Recycler View and many more. So, in this tutorial, we will explore the new ViewPager2 with its implementation as well .
Using Swipe-to-refresh in Android ApplicationIn this tutorial, we will be learning the Swipe-to-refresh gesture that is being used in various application like the Facebook app or the Instagram app, where the user of the app refreshes the app according to their need.
Play with Flexbox-Layout for AndroidLearn about Google's library Flexbox layout for Android. FlexboxLayout is a library project which brings the similar capabilities of CSS Flexible Box Layout Module to Android.
Android BottomSheet Example in KotlinIn this tutorial, we will learn how to implement BottomSheet in Kotlin and handle all its callback.
Android Bottom Navigation Example in KotlinAndroid Bottom Navigation Example in Kotlin. How to implement the BottomNavigationView in Kotlin?
Android Navigation Drawer in KotlinIn this tutorial, we will learn how to implement Navigation Drawer in Android with Kotlin.
Android Material Tabs in KotlinHow to create Material Tabs in Android in kotlin?
Navigation Drawer Android ExampleNavigation Drawer is the sliding menu that appears on the android screen with a hamburger menu icon in the ActionBar. The construction of it requires placing multiple views inside the navigation portion of the DrawerLayout.
Android View Evolution : PlaceHolderViewImplementing RecyclerView with dynamic content and adding listeners on each is a very irritating task. Let's leave animation alone, if we have to do it for nested Recyclers then it’s a nightmare.
Android Advance Image Gallery ExampleObjectives Outline for this tutorial: 1. We would be building a list of images with two types of views. One of the top with horizontal image list and below with vertical image list and apply animations on these view items as shown in the above display image....
Android Beginner Image Gallery ExampleThis example demonstrate creation of a list of images with animation using PlaceHolderView. For the sake of this example we will be placing our images in the drawable folder.
Android Expandable News Feed ExampleThis view is very different from the Android ExpandableListView in the sense that it’s based on PlaceHolderView which is based on RecyclerView. So, we have the power of reusing the views and managing the memory, that too is a very modular and simple interface.
Android Tinder Swipe View ExampleTutorial using PlaceHolderView: In this example we will develop views and architecture to simulate the Tinder Swipe.
Modifying Android Tinder Swipe View Example to support auto resizeThis thread is in continuation to the Android Tinder Swipe View Example. it modifies the example codes to auto fit various screen sizes. It also fixes the issue of card overlapping the like/dislike buttons and making them unclickable.
Android Infinite List with Load More ExampleObjectives Outline for This Tutorial: We will be building a news feed, which will simulate JSON data loading from the internet and then populate the list items.....
Using SnapHelper in RecyclerViewSnapHelper is a helper class that helps in snapping any child view of the RecyclerView. For example, you can snap the firstVisibleItem of the RecyclerView as you must have seen in the play store application that the firstVisibleItem will be always completely visible when scrolling comes to the idle position.
CustomView
Learn how to build Custom View in Android.
LinkDescription
Create your own Custom ViewIn this tutorial, we will learn about the custom view and how to implement it as one. We will talk about each and every aspect of CustomView like onDraw(), onMeasure(), Why it is necessary and how simply you can create your own Views.
UI Resources
Design of UI in Android using styles, fonts, and etc.
LinkDescription
Understanding Density Independence Pixel: sp, dp, dip in AndroidWhat is the best measurement unit for designing for Android Screen? Density Independent Pixel, Scaled Independent Pixels, Density Pixels or Pixels.
Build Material and Dark Themes Apps Using Style in AndroidIn this tutorial, we will learn how to build material and dark themes apps using styles in Android. We will see how we can change the look of the application just by writing some styles code for our application.
Implementing Dark Mode Theme in AndroidIn this tutorial, we will learn how to implement the dark theme in Android app in Android Q
Color Palette API in AndroidIn this tutorial, we will learn about the Color Palette API in Android. Here we will see how can we generate dynamic colors based on an image.
How to create a Transparent Activity in Android?In this tutorial, we will learn how to create a Transparent activity in Android. By using Transparent activity, your app will be launched but nothing will be displayed in the background of the window.
Using SVG Vector Drawables in AndroidIn this tutorial, we will learn how to use SVG Vector Drawables in our Android applications. By using SVG images in your app, you can use the same image or icon in every device size and you don't have to worry about the quality of images i.e. you don't have to add different size images for different size mobile devices.
Using Custom and Downloadable Fonts in AndroidIn this tutorial, we will learn how to use custom and downloadable fonts in android that was introduced in Android 8.0. Now there is no need of writing some piece of code for using the fonts. Also you can choose from any of the thousands of fonts on Google Fonts and use them in your app.
Animations
How to add animation in Android App?
LinkDescription
Animation in Android - Android TutorialIn this tutorial, we will learn how to use Animation in our Andoird Application. Animations are used to convey the message in a better way. It helps in improving the user experience. So, this tutorial is all about Animations in Android. So, let's learn about Animation.
Getting started with Motion Layout: Android TutorialsIn this tutorial, we will learn how to use MotionLayout in Android. MotionLayout is a subclass of ConstraintLayout for building animations. Here you will learn how to apply animation without writing any java or kotlin code.
Fragments
Learn about the Fragment and its lifecycle in Android.
LinkDescription
Android  Fragments and its LifecycleIn this tutorial, we will learn about the Fragments in Andorid.
How to communicate between fragments?In this tutorial, we will learn how to communicate between various Fragments in our Activity. You can have more than one Fragments in your Activity and it becomes a necessary task to learn how to communicate between those Fragments. So, let's learn how we can do this.
Implementing DialogFragment in AndroidIn this tutorial, we will learn how to implement a DialogFragment in our Android Application. A Dialog Fragment is a fragment that floats over some activity. One common example of Dialog is Alert Dialog. In the tutorial, we will learn how to make our own custom Dialogs.
Support User Interface
Learn about more UI components like ProgressBar, WebView, and etc.
LinkDescription
How to download a file in Android and show the progress very easily?How to download a file in Android and show the progress very easily? Most of the time while developing Android Apps, we come across a common use-case that is to download a file in Android and show the progress in the progress dialog. At MindOrks, we have an open-source library PRDownloader that solves this problem very easily.
Android WebView — in kotlinIn this tutorial, we will learn about the Android WebView.
Permissions in Android
Learn how to take Permission from user in Android.
LinkDescription
What are the different protection levels in Android Permission?In this tutorial, we will learn different protection levels in permission in Android application. There are three protection levels i.e. Normal, Signature and Dangerous. We will learn about all these permissions.
Implementing Easy Permissions in Android: Android TutorialIn this tutorial, we will learn how to implement Easy Permissions in Android. Easy Permissions are used to ask for permissions required by the application explicitly. These are used to ask users for permissions that are dangerous in nature and involves user privacy.
Understanding and Implementing Permission in Android QIn this tutorial, we will understand the new privacy-based location permission in Android Q and how to implement it in your app.
Storage
Learn about the Android Storage System.
LinkDescription
Understanding Storage System To Store Data In AndroidIn this tutorial, we will understand about the Android Storage System. We will learn about the Internal Storage, External Storage, Shared Preference, Database, and Shared Storage. We will also learn when to use which storage system in Android.
Understanding the Scoped Storage in AndroidIn this tutorial, we will understand the concept of Scoped Storage in Android. It was introduced with Android 10 and it provides limited and the required storage access to the application. Let's learn more about it.
Android SharedPreferences in KotlinIn this tutorial, we will learn about the Android SharedPreferences in Kotlin.
Implementing Preferences Settings Screen in AndroidIn this tutorial, we will learn how to implement the Preferences Settings Screen in Android. Settings screen are used to change the functionality and behavior of a particular application without changing the system settings. For example, you can change the background of a particular application by using the Settings feature.
Android Room Persistence Library in KotlinRoom Database is an abstraction layer over the SQLite Database which helps us to reduce our work with the SQLiteOpenHelper class.
Android SQLite Database in KotlinSQLite database helps us to store the data in the database. Android comes with the built-in implementation of SQLite Database.
Powerful Android ORM: greenDAO 3 TutorialgreenDAO is an open source Android ORM making development for SQLite databases easy. It relieves developers from dealing with low-level database requirements while saving development time.
Git
Learn the Fundamentals of Git and GitHub.
LinkDescription
Fundamentals of Git and GitHub | TutorialIn this video tutorial, we will learn how to get started with Git from basics.
How to contribute to Open Source?How to contribute to Open Source?
Build
Learn about the build system in Android.
LinkDescription
Speed up Gradle build for Android to save your timeIn this tutorial, we will talk about how can we speed up your gradle build to run it quickly and save your time
Building Android applications with Gradle — TutorialIn this tutorial, we will learn how to use Gradle in Android to build some applications. We will learn some Gradle commands that can be used to perform various Gradle functions using the command line and not the Android Studio. Also, we will learn gradlew tasks and build variants.
Gradle Tips and Tricks for AndroidIn this tutorial, we will learn some Gradle tips and tricks for Android. After reading this tutorial, you will be able to use various features of Gradle that will help you in developing an Android App faster than before.
Threading
Learn about threading to execute several tasks in parallel.
LinkDescription
Understanding Android Core: Looper, Handler, and HandlerThreadLooper, Handler, and HandlerThread are the Android’s way of solving the problems of asynchronous programming. They are not old school, but a neat structure on which a complex android framework is built.
Using ThreadPoolExecutor in AndroidThis article will cover thread pools, thread pool executors, and their use within Android. We’ll cover these topics thoroughly, with lots of example code. A thread pool manages a pool of worker threads (the exact number varies depending upon how it’s implementation).
Java & Android Multithreaded Programming: Runnable, Callable, Future, ExecutorIn this tutorial we will write a complete Java program that simulates API call to fetch user recent activities including likes, comments, posts, and friends concurrently from a server using ThreadPoolExecutor, Callable, Future, and Runnable.See complete code here:
Run parallel tasks in Java or Android, and get callback when all completeWe will write a Java program that execute several tasks in parallel and then send a callback when all of those tasks completes.
Android Networking Bare Skin: Understanding JPostAndroid networking is typically very involved if you try to implement bottom-to-top. So, we rely on third-party libraries. But never understand what’s underneath it.
Advanced Kotlin
Learn more in Kotlin.
LinkDescription
Understanding Higher-Order Functions and Lambdas in KotlinThis article is for anyone who is curious about the higher-order functions and lambdas in Kotlin but has no idea what they are exactly. The goal is to make you understand what are higher-order functions and lambdas which means that there are few simplifications done while writing this. If you understand what higher-order functions and lambdas in Kotlin are, then my mission will be accomplished.
Mastering Kotlin Coroutines In Android - Step By Step GuideIn this tutorial, we are going to master the Kotlin Coroutines in Android. We will cover what exactly Coroutines are and how they are useful. We will also go through the step by step guide on how to implement Kotlin Coroutines in Android. We will understand why there is a need for the solutions which Kotlin Coroutines provide. We will also talk about the scopes and the exception handling in Kotlin Coroutines.
Function literals with receiver in KotlinIn this tutorial, we will learn about the function literals with receiver in kotlin. We will be learning about lambdas, higher-order functions and more
Mastering Kotlin DSL In Android - Step By Step GuideIn this tutorial, we are going to learn how to write Kotlin DSL in your android project. We will also see a few examples of how to write custom DSLs in your project.
Understanding inline, noinline, and crossinline in KotlinIn this tutorial, we are going to learn the inline, noinline, and crossinline keywords in Kotlin. We will understand when to use the inline, when to use noinline and when to use the crossinline in Kotlin depending on our use-case. Most of the time, we do mistake while using these keywords inline, noinline, and crossinline in Kotlin. Let's understand it clearly to use it properly.
What are Coroutines in Kotlin?Coroutines are great features available in Kotlin Language. I played with it and really liked it. Coroutines are light-weight threads. A lightweight thread means it doesn’t map on the native thread, so it doesn’t require context switching on the processor, so they are faster.
A Complete Guide To Learn Kotlin For Android DevelopmentA Complete Resources and Tutorials To Learn Kotlin For Android Development At One Place.
Debugging
Learn how to solve bugs by debugging the code.
LinkDescription
How to access SQLite Database in Android for Debugging?In this tutorial, we will learn how to access SQLite Database in Android for Debugging with the help of the Android Debug Database library. By using the Android Debug Database library, you can view/add/edit/delete values of the tables present in the database.
Measure Method Execution Time In Android Debug BuildIn this tutorial, we will learn how to measure the method execution time in debug build of your application. Method execution time will help in reducing the time complexity of your method and this in return accelerates your Android App performance.
How to enable logging in OkHttp ?In this tutorial, we will learn about how to log your API calls better using OkHttp . We will learn how to create our own custom Interceptor and log more.
Better Logging in Android Using TimberIn this tutorial, we will be learning about a third party library which we use to log in android studio.
Debugging Android Databases And Shared Preferences In The Easiest WayDebugging your application is an important part of the Android Development. When it comes to debugging databases in an android application, it is very difficult to see what’s happening inside the database. The same is true with shared preferences.
Use StrictMode To Find Things You Did By Accident In Android DevelopmentAs long as we are human, we are bound to make mistakes. StrictMode is a developer tool which detects things you might be doing by accident and brings them to your attention so you can fix them.
Why Debugging is a Learning Opportunity For Developers?Let’s see why Debugging is a Learning Opportunity For Developers?
Memory Leak
Learn how to detect and fix memory leaks in Android.
LinkDescription
How to use Memory Heap Dumps data?In this tutorial, we will learn how to use memory heap dump data to identify memory leaks in our application. A memory leak occurs when an object is present in the memory and that object is not being used in the program.
Understanding Memory Usage In AndroidIn this tutorial, we will understand the Android memory usage. We will see how the memory usage of your application can increase or decrease your users. The tutorial contains detailed information about memory usage in Android.
Android Memory Leaks InputMethodManager SolvedMain Activity is not garbage collected even after finish because it is referenced by InputMethodManager indirectly.
Understanding Context In Android ApplicationWhat is Context? If we go by name, it’s the context of the current state of the application(object). It lets newly-created objects understand what has been going on. You can use the context to get the information regarding activity and application.
Detecting and fixing memory leaks in AndroidMany a time we see ANR dialog while using android apps, lags in our apps, we also see OutOfMemoryError in Android Studio while building apps. All these kinds of stuff happen due to memory leaks.
3rd Party Library
Learn how to use 3rd Party Libraries such as RxJava, Dagger, and etc.
LinkDescription
RxJava Anatomy: What is RxJava, how RxJava is designed, and how RxJava works.RxJava has become the single most important skill for Android development. Most of you must have worked with it in some form, either in your own codebase or through other third party libraries, like Fast Android Networking and Retrofit.
A Complete Guide To Learn RxJavaA Complete Resources To Learn RxJava At One Place. RxJava is used for reactive programming. In reactive programming, the consumer reacts to the data as it comes in. Reactive programming allows for event changes to propagate to registered observers. As we know that the RxJava is the most important library for Android Projects. So we must have a proper grip on using RxJava in the Android Projects.
Understanding Types Of Observables In RxJavaObservable, Operator and Observer. An Observable is like a speaker which emit value. It does some work and emits some values. An Operator is like a translator which translate/modify a data from one form to another form. An Observer gets those values.
Implement Search Using RxJava OperatorsNowadays, most of the applications that we use in our daily life come with a search feature which provides us a facility to get things very quickly we are looking for. So, having a search feature is very important. And, we as a developer have a responsibility to implement it in a better way.
RxJava Operators Tutorial - Learn by ExamplesI believe there is an operator for everything in RxJava. In this tutorial, we are going to learn RxJava operators by examples in which we will cover some typical problems in Android and its solution using the RxJava operators.
Error Handling in RxJavaIn this tutorial, we will learn how to handle errors in RxJava. We would be understanding various ways to handle the error and will also see a real-life example for better understanding.
Understanding RxJava Create and fromCallable OperatorIn this tutorial, we are going to learn the RxJava Create and fromCallable Operators. We will understand when to use the Create operator and when to use the fromCallable operator depending on our use-case. Most of the time, we do mistake while using RxJava Operators. Let's understand it clearly to avoid the mistake.
RxJava Operator - Map Vs FlatMapRxJava has so many operators. In order to use them correctly, we must know about them. Here, In this tutorial, we will discuss the Map and the FlatMap.
Understanding RxJava Defer OperatorIn this tutorial, we are going to learn the RxJava Defer Operator. We will understand when to use Defer operator depending on our use-case. Most of the time, we do mistake while using the RxJava Defer Operator. Let's understand it clearly to avoid the mistake.
Understanding RxJava Timer, Delay, and Interval OperatorsIn this tutorial, we are going to learn the RxJava Timer, Delay, and Interval Operators. We will understand when to use Timer operator, when to use Delay operator and when to use Interval operator depending on our use-case.
Understanding RxJava Zip Operator With ExampleIn this tutorial, we are going to learn the RxJava Zip Operator with an example. Zip combine the emissions of multiple Observables together via a specified function and emit single items for each combination based on the results of this function. We will also see the advantages of Zip Operator.
Implement Caching In Android Using RxJava OperatorsImplement Caching In Android Using RxJava Operators with three data sources as memory, disk, and network. First, we need to understand why caching is useful? Caching is very useful in the following situations: Reduce network calls, we can reduce the network calls by caching the network response. Fetch the data very fast, we can fetch the data very fast if it is cached.
RxJava Operator - Concat Vs MergeRxJava Operator - Concat Vs Merge. RxJava has so many operators. In order to use them correctly, we must know about them. Here, we will discuss the Concat and the Merge Operators.
RxJava + Fast Android NetworkingFast Android Networking now supports RxJava. Let’s explore why RxJava support is important. RxJava is used for reactive programming. In reactive programming, the consumer reacts to the data as it comes in. Reactive programming allows for event changes to propagate to registered observers.
Implement Pagination In RecyclerView Using RxJava OperatorsIn this tutorial, learn how to implement Pagination in RecyclerView using the RxJava Operators.
Migrating from RxJava 1.0 to RxJava 2.0 and Learn RxJava by ExamplesThis article will help you learn RxJava 2.0 by example. It will also show you how to migrate from RxJava 1.0. If you are just getting starting with RxJava, here’s a sample project to learn it with examples. You can dive right in, build the project, and start learning.
Understanding RxJava Subject — Publish, Replay, Behavior and Async SubjectThis article is all about the Subject available in RxJava. A Subject is a sort of bridge or proxy that is available in some implementations of ReactiveX that acts both as an observer and as an Observable.
Implementing EventBus With RxJava — RxBusRxBus implementation with RxJava2. So, let’s see how we can create RxBus using RxJava 2. First of all, We must have the knowledge of subject in RxJava. For that you can refer my previous article on RxJava Subject.
RxPS — RxJavaPriorityScheduler — A RxJava Priority Scheduler library for AndroidOverview of RxPS — RxJavaPriorityScheduler.
The Best Android Networking Library for Fast and Easy NetworkingFast Android Networking Library (supports all types of HTTP/HTTPS request like GET, POST, DELETE, HEAD, PUT, PATCH). Why should you use Fast Android Networking Library? How to use the Fast Android Networking library?
A Complete Guide To Learn Dagger 2Dagger 2 is a dependency injection for Android. Dagger 2 is a dependency injection (DI) framework. Dependency Injection in build upon the concept of Inversion of Control. Which says that a class should get its dependencies from outside. In simple words, no class should instantiate another class but should get the instances from a configuration class.
Introduction to Dagger 2, Using Dependency Injection in Android: Part 1Dependency Injection in build upon the concept of Inversion of Control. Which says that a class should get its dependencies from outside. In simple words, no class should instantiate another class but should get the instances from a configuration class.
Introduction to Dagger 2, Using Dependency Injection in Android: Part 2This is the part 2 of the article series. In part 1 we understood the need and advantages of dependency injection. We also got an overview of Dagger 2. In this part, we will focus on implementing the DI using Dagger in an android app.
Android Dagger 2: Critical things to know before you implement. Dagger 2 in a Dependency Injection framework for Android. I assume the reader is familiar with Dagger and it’s usage pattern in Android for the sake of this Article.
Dependency Injection with Dagger2 AdvanceIt is an advanced version of dagger2 which will help in the interview.
Dependency Injection with Dagger2A detailed description of DI and dagger2
Downloading and Showing Image with Glide Library in AndroidIn this tutorial, we will learn how to use Glide for downloading and showing images in our Android application. Basically, Glide library downloads the image and store it into your cache or local memory and uses it when needed in future.
Getting Started with Retrofit using Kotlin and RxJava - Android Networking LibraryNetworking is one of the primary components of any Android application. There are a lot of good libraries out there that helps in making networking fairly easy for us. In this article, I am going to provide you the essential setup and concepts required to build an Android application using Retrofit with RxJava and Kotlin
PRDownloader — A File Downloader Library For AndroidPRDownloader: A file downloader library for Android with pause and resume support.I recently published a library, which I believe to be the simplest way to handle downloading in Android with pause and resume support. Overview of the PRDownloader library.
MindOrks Android StoreSearch Android Libraries, Projects, and Tools.
Data Format
Know more about the Data Format like JSON, XML, and etc.
LinkDescription
Parsing JSON in AndroidIn this tutorial, we will learn how to do JSON parsing in Android. JSON parsing is done to get the data that is present in the form of JSON i.e. you will fetch the desired data from the JSON file in your Android Application by using JSON parsing. We will learn each and every concept of JSON parsing.
Processing and Parsing XML in AndroidIn this tutorial, we will learn the concept of XML parsing in Android. XML parsing is used to get the data from the XML format files in our Android Application. Various websites use XML format to represent the data. So, in order to get that data in our application, we need to parse the XML file. In this tutorial, we will cover every aspect of XML parsing.
Why Android developers should consider FlatBuffers over JSONFlatBuffers vs JSON-You may be asking - why use new tools if we already have standard JSON, JSON-parser like GSON, and Jackson. Well, give FlatBuffers a try and you’ll find that they’re significantly faster than JSON.
Android Jetpack
Build better application using Android Jetpack.
LinkDescription
Using Jetpack Compose to build UI in AndroidIn this tutorial, we will build and learn how to Use Jetpack Compose to build UI in Android. We will learn how to setup and work with it. We will also discuss how to make few other components as well
Integrating Work Manager in AndroidIn this tutorial, we will talk about how to integrate the work manager in your android project and much more advanced feature and customization which makes your life easy in scheduling tasks.
Understanding LiveData in AndroidIn this tutorial, we will learn about LiveData which is used to notify the observers associated with it if there is a change in the LiveData. Normally, the UI elements are notified when there is a change in data. Also, only that observers will be notified that are in Live state. So, let's explore this.
Observe event only once using SingleLiveEventIn this tutorial, we will learn how to using SingleLiveEvent to emit data only once whenever required. This is useful when we want the data to be only emitted once like in the case of Snackbar, navigation. In this tutorial, we will use the case of Snackbar to understand better.
Shared ViewModel in Android: Shared between fragmentsIn this tutorial, we will learn about ViewModel which is a part of Android Jetpack. This ViewModel is used to store the UI related data to have a consistent flow of data even when the UI changes. We will also learn how to share data between fragments using ViewModel.
Implementing Android Jetpack PreferencesIn this tutorial, we will learn how to implement Preferences in Android. Preferences are a part of Android Jetpack and are used to implement in-app settings. So, by using Preferences, you can change the behavior of your app without changing the system's settings. Let's get started.
Implementing Paging Library in AndroidIn this tutorial, we will learn how to implement Paging Library in Android. Paging Library is used to get only a selected amount of data out of a heap of data i.e. at a particular instant of time only the desired amount of data will be loaded in the application. This feature is very important for applications using infinite scrolling. We have created a full tutorial for Paging.
LiveData setValue vs postValue in AndroidIn this tutorial, we will learn about LiveData and the methods that are used to update the value of the LiveData i.e. setValue() method and postValue() method. We will look at the difference between these two methods. So, let's get started.
Implementing Android SliceIn this tutorial, you will learn about Android Slice and how to implement it. We have learned a basic way to implement a slice and how to work with it.
LiveData vs ObservableField in AndroidIn this tutorial, we will talk about LiveData vs ObservableField in Android. We will also talk about the differences and also compare them.
Getting Started With CameraX Jetpack Support LibraryIn this tutorial, you will learn how to use camera-x support library to build your next generation camera app.In this app we will be building a Camera app from scratch.
ViewModel with SavedStateIn this tutorial, we will learn about using SavedState in ViewModel. This is the part of Android Architecture Component. You will learn how to Persist ViewModel state across process recreation.
What are Android Architecture Components?What are Android Architecture Components? As the Android Jetpack components are a collection of libraries that are individually adoptable and built to work together while taking advantage of Kotlin language features that make us more productive.These software components have been arranged in 4 categories in which one of the categories is Architecture Components.
What is Android Jetpack and why should we use it?What is Android Jetpack and why should we use it? Benefits of Android Jetpack. Build high quality, robust apps using the Android Jetpack. Android Jetpack is a collection of Android software components which helps us in building great Android apps.
Use ViewModelScope For Less Boilerplate Code With CoroutinesIn this tutorial, we will learn how to use the ViewModelScope for less boilerplate code with coroutines.
Architecture
Learn how to build Android App using Architecture.
LinkDescription
Mastering Design Patterns in Android with KotlinIn this tutorial, we will learn about various Design Patterns in Android that will make our code cleaner and easier to understand. We will learn about Creational, Structural, and Behavioural pattern in Android. So, let's master them and write the code in better way.
Essential Guide For Designing Your Android App Architecture: MVP: Part 1Android framework does not advocate any specific way to design your application. That in a way, make us more powerful and vulnerable at the same time.
Essential Guide For Designing Your Android App Architecture: MVP: Part 2This is the second part of the article series. In the first part, we developed the concept of MVP and worked out a blueprint for the android application architecture.
Essential Guide For Designing Your Android App Architecture: MVP: Part 3 (Dialog, ViewPager, and Adapters)During the course of this development, many of you inquired about the implementation of Dialogs and Adapter based views in this architecture. So, I am writing this article to explain the place-holding for these.
Android MVP Architecture Extension with Interactors and RepositoriesSometime back I wrote a series of articles on the design of MVP architecture for Android. The project was very well received in the community and hundreds of companies and developers added the architecture in their applications.
MVC vs MVP vs MVVM architecture in AndroidThis tutorial is to explore the knowledge of MVC, MVP and MVVM architecture in Android and know how they differ - MVC vs MVP vs MVVM.
How to build a Modular Android App Architecture?In this tutorial, we will learn how can we Build a Modular Android App Architecture. We will learn about dynamic-feature and dynamic delivery. We will also learn how can we use a library module to modularise the app's architecture
Unit Testing
Learn more about Unit Testing.
LinkDescription
Using Mockito in Android Unit Testing as a ProIn this tutorial, we will learn about how to use mocking as a pro in Android unit testing. You will learn how to set up and perform the test using it
Mockito cannot mock because : final class in KotlinIn this tutorial, we will talk about how we can mock the final class using Mockito. By default, we can't mock the final classes using mockito. Here in this tutorial, I have talked about multiple ways to test final classes.
Firebase
Explore Firebase and its Services.
LinkDescription
Push Notifications in Android Using FCMIn this tutorial, we will learn using Push Notifications in Android Device using FCM. We will learn how to integrate the push notification feature in the app from scratch and handle the message as well.
Firebase Realtime Database: Android TutorialIn this tutorial, we will learn about Firebase Realtime Database. With the help of an example, we will see why should we use Firebase Realtime Database in our project.
Implement In-App Purchases in AndroidIn this tutorial, we will talk about how to implement and setup you android app for in app purchase.
Firebase Login and Authentication: Android TutorialIn this tutorial, we will learn how to login and authenticate in our Android application with the help of Firebase. We will cover each and every part of authentication using Firebase. So, let's learn together.
Getting Started with Firebase RemoteConfig in AndroidIn this tutorial, we will learn about the firebase Remote Config feature in Android. By using Firebase Remote Config, we can bring some updated in the App like some color change in the app, without publishing any update of the app on the Play Store. We will cover this topic by doing one example also.
Security
Make your application more secure.
LinkDescription
Applying Proguard In An Android ApplicationProGuard is a tool used to minify, obfuscate, and optimize the code in an Android application.
Things to care while using Proguard in Android applicationIn this tutorial, we will learn about the things that we should know before using Proguard in Android application. Proguard is used to minify, obfuscate and optimize the Android code. So, we created a list of things that you should know before using Proguard.
Using R8 to reduce APK size in AndroidIn this tutorial, we will learn how to reduce the APK size in Android by using R8. Small-sized applications are more likely to be downloaded by the users as compared to the large sized APKs. So, let's find how to reduce the APK size.
How to encrypt data safely on device and use the AndroidKeystore?In this tutorial, we will learn how to encrypt data safely in Android device and how to use Androidkeystore. We will learn about key encryption, file encryption, and how to encrypt SharedPreferences.
Securing API Keys using Android NDK (Native Development Kit)In this tutorial, we will learn how to secure our API Keys that are used in Android applications using the Android NDK (Native Development Kit). We have created a detailed tutorial of securing the API Keys.
Integrating Android Google’s reCAPTCHA in Android AppIn this tutorial, we will learn how to implement Google's reCAPTCHA in our Android application. reCAPTCHA is used to verify if the user is a Human Begin or some robot or bot.
App Release
Make your app production ready.
LinkDescription
Android App Release Checklist For The Production LaunchSo, you have been waiting for this special day while doing a lot of hard work on your application, now you are going to release your Android application in the production but you are thinking if there is something I am missing or forgetting. Then, this is the ultimate release checklist for you.
How to release a bug-free Android App in production?In this tutorial, we will be talking about the few things which you can do to keep bugs as less as possible.
Implementing in-app updates on AndroidIn this tutorial, we will learn about the in-app update feature in your Android app. In-app update is a feature that is used to download the update of the app without using the play store. We will see how to use the flexible and immediate in-app update in our app.
How to reduce APK size in androidRecently we have released an Android application called Correctify. Then, many of the folks started asking us that how this application size can be less than 2.5 MB. Then, I thought to write this article to answer it. There is nothing special, we only have to follow the simple and standard things.
How to create multiple apk files for android applicationToo many android devices and much more to come and among them, various different CPU architectures and different screen densities devices are there. Making single apk with all device compatible, increases your apk size, as it has resources for every device.
Interview
Prepare yourself for your next interview.
LinkDescription
Android Developer should know these Data Structures for Next InterviewIn this tutorial, we are going to cover all the data structures which are must for any Android Developers when it comes to cracking the interview and knowledge both. Although there are many more to learn, we will cover the most used and the most frequently asked in Android Interview.
Android Developer Interview Preparation Guide - Cracking the Android InterviewAndroid interview preparation guide for Android developers.
Android Interview QuestionsYour Cheat Sheet For Android Interview - Android Interview Questions.
Keep Learning and Improving
Explore more in Android.
LinkDescription
MindOrks Youtube ChannelBecome Pro in Android by watching videos.
Learn to write good code in Android: Starter PatternIn this tutorial, we will learn how to write good code in Android by using the Starter Pattern. Starter pattern is used to write codes in such a way that there is no bug or runtime error while launching an Activity. So, use Starter Pattern and stand out from the crowd.
Understanding Image compression in AndroidIn this tutorial, we will understand how image compression works in Android. We will see the working of PNG, Vector Drawables, JPEG and WebP. So, let's learn image compression in Android.
Using MediaPlayer to play an Audio File in AndroidIn this tutorial, we will learn how to use MediaPlayer to play an audio file in Android. We will learn about different states present in the MediaPlayer and will also implement it. So, feel the music.
Getting started with Android NDK: Android TutorialIn this tutorial, we will learn how to use Android NDK. We will learn the use of native codes i.e. C and C++ in Android development. So, let's learn about Android development in a native way.
Integrating Expression Search in Android appIn this tutorial, we will learn how to integrate expression search in Android application. We will learn how to use GIFs for better user communication in our application. We will cover every aspect of it.
Using Android Sensors: Android TutorialIn this tutorial, we will learn how to use Android Sensors. There are various sensors present in our Android device and we can use them in our application. For example, we can use the temperature sensor in some weather app. So, let's learn about Android Sensors.
Improving Android app performance with BenchmarkingIn this tutorial, we will learn how to improve Android app performance with Benchmarking. Benchmarking is a way to measure the code that you have written for your app. For the process of benchmarking, we have one library called Jetpack Benchmark. So, we will lean each and everything related to benchmarking.
Authentication Using Fingerprint In Android - TutorialIn this tutorial, we will learn how to authenticate in Android applications with the help of fingerprint. Fingerprint Authentication is the best way for authentication because you need not worry about remembering the password and it is a very fast process also. So, let's see how we can do this in our application.
Easy SMS Verification in Android: SMS User Consent APIIn this tutorial, we will learn how to implement SMS verification using the SMS User Consent API in Android. This API is used to read only the message containing the verification code and will automatically extract the code from the message by taking permission from the user with the help of a prompt.
What are the differences between Dalvik and ART?In this tutorial, we will see the difference between Dalvik and ART in Android.
How to check the visibility of software keyboard in Android?In this tutorial, we will learn how to check the visibility of software keyboard in Android.
Migrating to 64 bit Architecture in AndroidRecently Google announced that in Aug'19 Apps on the PlayStore should provide the subsequent version of 32-bit native libraries in 64 bit. 64 bit is supported since Android 5 (Lollipop) days. In this tutorial, we will be learning how can we migrate an app from 32 bit to 64 bit.
How to programmatically take a screenshot on Android?In this tutorial, we will learn about how can we take a screenshot of the particular view we are into.
How to open a PDF file in Android programmatically?In this tutorial, we will learn how to open a PDF file i.e. Portable Document Format file in Android programmatically. Since PDF files are the most used document file format, so, using a PDF file in our application can be a good way of displaying some documents in our application. Let's find, how to open a PDF file in Android programmatically.
Understanding Activity Aliases in Android To Preserve Your LaunchersIn this tutorial, we will learn the concept of Activity Aliases in Android. Activity Aliases are used to preserve the Launchers whenever there is a change in the Launcher Activity name. Generally, when we create a shortcut on our home screen and if we change the Launcher Activity, then the shortcut will be removed from the home screen. So, let's find how to deal with this.
Activity Recognition in Android — Still, Walking, Running, Driving and much moreIn this tutorial, we will learn how to use the Activity Recognition API in our Android Application. The Activity Recognition API is used to determine the Activity that a user is doing at a particular instant of time like walking, running, driving, still, etc.
Implementing Bubbles in AndroidIn this tutorial, we will learn how to use Bubbles in Android. Bubbles are a new feature introduced in the Beta version of Android Q. These are used to display notifications of any application over some other application and you can launch any activity by using these Bubbles, something like Facebook Messenger's app.
Using GPS, Location Manager in Android: Android TutorialIn this tutorial, we will learn how to update the location using the GPS of a mobile device. Firstly we will look upon some of the important things that should be kept in mind to use Google map and after that, we will perform an example to live track the user location.
The powerful tool DiffUtil in RecyclerView - Android TutorialIn this tutorial, we will learn about DiffUtil in RecyclerView. How it is good from the traditional way of using RecyclerView. We will discuss in details
What is Lint? What is it used for?In this tutorial, we will learn about Lint. Lint is a code scanning tool present in Android Studio that identifies the error in our code and suggests some changes in our code. Before publishing our app, we should use lint for our project. In this tutorial we will learn how to use lint in a more smarter way.
Using Drag-Drop in Android ApplicationsIn this tutorial, we will learn how to use the drag and drop feature in our Android app. Drag and Drop feature is used to move one view from one place to other. This will help in moving the UI and the data associated with that item also.
Using Exoplayer to play Video and Audio in Android like a ProIn this tutorial, we will learn how to use ExoPlayer like a pro. ExoPlayer is a library used to play audio and video in Android apps. You can customize the ExoPlayer according to your needs. And due to this feature, the Youtube app is also using ExoPlayer for video streaming.
Exploring Edge to Edge Feature in Android QIn this tutorial, we will talk about how to use the Edge to Edge feature of Android Q This will help the user to explore the complete width and height of the device.
Understanding Multidex in AndroidIn this tutorial, we will learn how to use Multidex in Android. Basically, Multidex is used when we want to add more than 64K methods in our Android project. If we don't use any Multidex for project having more than 64K methods, then we will encounter DEX error. So, in this tutorial, we will learn how to use Mulidex to improve functionalities in our App.
Getting Started with ShareSheet in Android QIn this tutorial, we will understand how to integrate the share sheet in our application and how it is different from DirectShare API which was launched in Android M. This tutorials covers the detail and step by step explanation to integrate it.
Understanding Settings Panels in Android QIn this tutorial, we will understand the new setting panel which released in Android Q. With Google launching Android Q, Lot of exciting features has also popped up. One amazing feature is Location Service usage and few more.
Android Browser: Let’s Launch Chrome Custom Tabs with KotlinGoogle had launched a library called chrome custom tabs. As a developer, we have an option to open an in-app browser for better user experience. Chrome Custom Tabs helps us to open web URLs within the context of our app using an installed chrome browser.
Android SearchView in Room Database in KotlinHow to implement SearchView inside Room Database?
All About Android Development In 2018What happened to Android development in 2018. Android has changed a lot in 2018. Let's see what actually happened in 2018.
Android App Performance Tips (Smooth Running Android App)Tips to make better android app (No lags now … only smooth running UI)
Android Activity “launchMode” Explained , Must know for Android Development.What happens , when we add this launchMode tag in an activity of Android application.
Awesome Android Complete References At One PlaceAwesome Android Complete Reference Link
Using Bitmap Pools in AndroidImage heavy applications have to decode many images, so there will be continuous allocation and deallocation of memory in application. This results in frequent calling of the Garbage Collector (GC). And if you call the GC too many times, your application UI freezes.
Comparing Android NDK and RenderScriptThe Native Development Kit (NDK) is a set of tools that allow you to leverage C and C++ code in your Android app. You can use it to build from your own source code, or to take advantage of existing prebuilt libraries.
Creating Custom Annotations in AndroidAnnotations are Metadata. And Metadata is a set of data that gives information about other data. So in this case, annotations are essentially just information about your code.
Android Development Useful ToolsOver the years, these are the Android development tools I’ve found most useful. I consistently use these tools to build apps. I recommend you take a look at them and see whether they’re a good fit for your tool chain.
Amazing Open Source Android AppsBy using and examining open source apps, you can learn how to build better apps yourself. The following are my picks for the top open source Android projects. I’ve found these helpful in proving my own ability to ship better production apps. From the source code of the below projects, you’ll be able to learn a ton of best practices for Android development.
Android Development Best PracticesLet’s explore some best practices in designing and developing Android apps. For starters, when you develop an Android application, you should prepare it to be run on a wide variety of devices and circumstances. Every Android device is a family in itself. When one member of the family goes haywire, it means the rest of the family is also likely to be affected.
Android App Optimization Using ArrayMap and SparseArrayThis article will show why and when to use ArrayMap and SparseArray to optimize your Android Applications. Whenever you need to store key -> value pairs, the first data structure that probably comes to mind for accomplishing this is HashMap. HashMap is quite flexible, so it may be tempting to use it all over the place, without really thinking about their possible side effects.
Android Code Style And GuidelinesBy following standard coding style and guidelines, we can build a better android application. If you follow a standard coding style in android, it will be easier for you and also for others to understand your code easily.
Awesome Android Open Source LibrariesBest Android Open-Source Libraries. As you know that using third-party libraries in your projects can save you a lot of time and also make the projects bugs-free. The main reason behind is that the open source projects are being developed by the whole community of developers with love.
Google Releases The Developer Preview Of Android Things (IOT)What is Android Things? Android Things allows developers to build a smart device using Android APIs and Google Services. This takes the usual Android development stack — Android Studio, the official SDK, and Google Play Services — and applies it to the IoT.
Android Things Tutorials — Getting StartedAndroid + Internet Of Things = Android Things. This article is completely about getting started with Android Things application and how to build an Android Things application?
Battery Optimization for Android AppsReducing battery usage in an android application. Battery Usage Reduction is also an important part of an android development as this optimization will ultimately lead to retain the user, as many times the user uninstall the application because of the battery draining issue.
Android App Performance MetricsThis article is completely about the metrics that you should measure continuously while android application development. This metric is very important as it tells, how your android application is being experienced by the end user.
Android TensorFlow Machine Learning ExampleMachine Learning: Integrating Tensorflow in Android
Creating Custom Model For Android Using TensorFlowHow to train custom model for Android using TensorFlow.
Improve Your Android Coding Through AnnotationsAnnotations are Metadata. And Metadata is a set of data that gives information about other data. There are many ways in which annotations can be used. But, here we will talk about how the annotations can be used to improve our android coding.
Why use Facebook’s Android Device Year Class Library?Year Class Library by Facebook. Building for the next billion users using the Year Class Library. This library is very important.
How To Learn Android DevelopmentHow to learn Android app development? Here, I have tried to cover most of the important things in the Android Development that I have learned the hard way. Learning Android Development is a step by step process, so must learn it step by step. So this guide will also show how to learn android app development step by step.
Android Interview QuestionsYour Cheat Sheet For Android Interview Questions. I am very fortunate to have the experience of taking interviews of many Android Developers. In the whole process, I have learned a lot and also cracked the interviews of top companies including startup and MNC.
Android Package Name Vs Application IDCreating multiple APKs for different purposes. Nowadays, many times we come to the situation that we need the APK with another different package name. Most of us do it easily, but sometimes we got stuck because of applicationId and packageName.We must know the difference between packageName and applicationId.
How The Android Image Loading Library Glide and Fresco Works?I am writing this article to share my knowledge which I have learned the hard way. In Android, working with images(bitmaps) is really difficult as the application goes out of memory(OOM) very frequently. OOM is the biggest nightmare for the Android developers.
How To Become A Complete Android DeveloperA complete guide to become a complete Android Developer. How to be an expert android developer? I have met many great Android developers all around the world. I have learnt a lot from them and tried to collect things that we should know to become a complete Android Developer.
The New Dagger 2 Android InjectorHow to use the new Dagger 2 Android Injector? This article is all about implementing the new Dagger 2 Android Injector in an Android application. The new dagger 2 is released with the Android support module and the Android compiler.
I have 1 year of experience in Android. Now What?Friends, many of you asked me this question, so I thought of writing this as an article to answer this good question so that most of us get benefited. Let’s start, how we all have started the Android Development. We all use to write the whole code in the single class that is Activity either it’s data fetching or any type of logic.
How Voice And Video Call Works?Voice over Internet Protocol (VoIP) is one of the most popular standards for voice and video calling over the web. This post is all about how the voice and video call works on the high level. We all use voice and video on the various platform like WhatsApp, Skype, Messenger, Facebook, and etc.
Handle SSL(Https) Certification Path Exception for Java ApplicationsAs a java developer, if you have not been stung by the below-mentioned exception while running a Java application developed by you on your machine that hits an SSL server (https), then be prepared to get a nasty experience at some point of your coding journey.
Best Articles on Android That We Published In 2017Top articles on Android that are actually worth reading. First of all, I must say that I am very fortunate to have the readers like you. It encourages me to share my knowledge with you and at the same time, I am learning from you.
Android Annotation Processing Tutorial: Part 1: A practical approachAnnotation processing has become one of the most important language features in the modern Java programming. Java supports annotation processing from its release of Java 5. It generates files during the compile time.
Android Annotation Processing Tutorial: Part 2: Project StructureIn this tutorial, we will build a project as a complete library implementation. The reader will be able to develop his own library similar to ButterKnife, Room etc.
Android Annotation Processing Tutorial: Part 3: Generate Java Source CodeOur library will generate a wrapper class that will help to map the views and clicks listeners for an activity.
Android Annotation Processing Tutorial: Part 4: Use The Generated CodeIn this final part of the tutorial we will see the usage of the generated code while annotation processing.

Android Development Online Course For Professionals

Android Development Online Course For Beginners

Become Pro in Android by watching videos

OUR LEARNERS WORK AT