Android & Kotlin Books

Android & Kotlin Books · Beginner

Android & Kotlin
Android Fundamentals by Tutorials
In this book, you’ll learn how to build Android applications from scratch using Android Studio as the IDE. You’ll learn the basics of Kotlin and how to build elegant UI with Jetpack Compose. You’ll expand on the basics by making robust and scalable apps using well-established architecture patterns.
Multiple Domains
App Design Apprentice
Learn Modern App Design with Figma! This book guides you through designing modern mobile apps using fundamental design principles. This book is for intermediate iOS and Android developers who already know the basics of mobile app development but want to also learn how to design apps with attractive and effective UI and UX. Topics Covered in App Design Apprentice Figma: Learn the basics of this modern design tool. App Teardowns: Analyze and pick out the best parts of other well-designed apps. Wireframes: Explore what makes good app user flows. Reusable Components: Learn to create and use reusable components such as buttons and toolbars. Typography: Basics for communicating hierarchy, order and emphasis. Color: Leverage visual styles and palettes. Transitions and Animations: Create different transitions between screens to communicate relationships. Design Systems: Implement best practices for creating good app experiences in each ecosystem. This book will leave you with the knowledge needed to design modern mobile apps that are functional and attractive.
Multiple Domains
Git Apprentice
Learn Git! Chances are if you’re involved with software development you’ve heard of and have used Git at some point in your life. Version control systems are critical for any successful collaborative software project. Git is both simple to start using and accommodating for the most complex tasks with version control. Even seasoned Git users hit roadblocks on how to handle common situations. Git Apprentice is here to help! This book is the easiest and fastest way to get hands-on experience with using Git for version control of your projects. Who This Book Is For This book is for anyone who would like to leverage the power of version control with Git in their software development process. The book starts with a gentle introduction to Git. It then moves on to walk you through creating a new repository, cloning an existing one, merging in changes, and all of the bits in between. Topics Covered in Git Apprentice A Crash Course in Git: Learn how to get started with Git, the differences between platforms, and a quick overview of the typical Git workflow. Cloning a Repo: Discover how to clone a remote repo to your local machine, and what constitutes “forking” a repository. Git Log & History: You’ll discover the versatility of the git log command—displaying branches, graphs and even filtering the history. Creating a Repository: If you are starting a new project, and want to use Git for source control, you first need to create a new repository. And more! One thing you can count on: after reading this book, you’ll be well-prepared to use Git in your own software development workflow!
Android & Kotlin
Android Apprentice
For Complete Beginners to Android! If you’re completely new to Android or developing in Kotlin, this is the book for you. Android Apprentice takes you all the way from building your first app, to submitting your app for sale. By the end of this book, you’ll be experienced enough to turn your vague ideas into real apps that you can release on the Google Play Store. You’ll build 4 complete apps from scratch — each app is a little more complicated than the previous one. Together, these apps will teach you how to work with the most common controls and APIs used by Android developers around the world. And these aren’t simple apps, either; you’ll build everything from a simple game, to a checklist app, a map-based app, and a podcast manager and player! We’ve also included some bonus sections on handling the Android fragmentation problem, how to keep your app up-to-date, preparing your app for release, testing your app, and publishing it for the world to enjoy! If you’re new to Android programming, you need a guide that: Shows you how to write an app step-by-step With tons of illustrations and screenshots to make everything clear In a fun and easygoing manner! We’ve written this book in Kotlin: the new, modern, first-class language for Android developers. You’ll be at the leading edge of Android developers everywhere as you learn how to develop in the fluid and expressive Kotlin language. The Android Apprentice is your best companion for learning Android development. With all project source code included with the book, and support forums right on our site, it’s simply the best way to start your Android development career.
Android & Kotlin
Kotlin Apprentice
For complete beginners to Kotlin. No prior programming experience necessary! This is a book for complete beginners to the new, modern Kotlin language. Everything in the book takes place in a clean, modern development environment, which means you can focus on the core features of programming in the Kotlin language, without getting bogged down in the many details of building apps. This is a sister book to the Android Apprentice the Android Apprentice focuses on making apps for Android, while the Kotlin Apprentice focuses on the Kotlin language fundamentals.
Multiple Domains
Living by the Code
Living by the Code brings the experiences and insights of over 40 of today’s top developers, leaders and innovators in tech together in one single book, to help you grow your career in today’s ever-changing technical landscape. It’s like having dozens of tech’s best mentors — right at your fingertips.

Android & Kotlin Books · Professional

Multiple Domains New
Kotlin Multiplatform by Tutorials
The best book to teach you how to share code across platforms using Kotlin Multiplatform. You’ll gain the foundation of creating user interfaces using native UI toolkits and then writing common code for serialization, networking and persistence. You’ll also learn how dependency injection, testing and different architectures fit in with Kotlin Multiplatform so that you build maintainable and scalable apps for the real world.
Android & Kotlin
Jetpack Compose by Tutorials
In this book, you’ll learn how to build a powerful app using Jetpack Compose, how to style your apps using Material Design, special animations and state transitions, how to use modifiers and much more! This book will serve you as a central point that holds all the information you need to dive deep into Jetpack Compose, then apply it to your personal and production level projects. You’ll focus on learning Jetpack Compose not only through theory, but also through real-world project examples. After reading this book, you’ll become a true expert on the topic and you’ll learn how to switch your mindset and start to think in Jetpack Compose and declarative programming.
Android & Kotlin
Android Accessibility by Tutorials
Accessibility is an important, often overlooked, part of building a quality app. The Web Content Accessibility Guidelines (WCAG) can be confusing and it’s often unclear how to apply these guidelines to Android. In this book, you’ll learn about building accessible apps on Android using WCAG through hands-on, step-by-step tutorials.
Android & Kotlin
Real-World Android by Tutorials
The best book to teach you to build professional, secure Android apps for the real world using the most important architectures and libraries. You’ll gain all the foundations of Android development you need to make the best decisions in your own codebase, while addressing critical problems like finding the right architecture, making the UI responsive and appealing, and implementing efficient animations.
Android & Kotlin
Android Debugging by Tutorials
Debugging is one of the most important steps in app development. Android Studio contains several tools which can help you out in stabilizing and optimizing your app. In this book, you’ll learn to use Android debugging tools to make your app optimized and bug-free through step-by-step tutorials.
Android & Kotlin
Kotlin Coroutines by Tutorials
The importance of concurrency is discovered quite early on by people who start with Android development. Android is inherently asynchronous and event-driven, with strict requirements as to on which thread certain things can happen. Add to this the often-cumbersome Java callback interfaces, and you will be trapped in spaghetti code pretty quickly (aptly termed as “Callback Hell”). No matter how many coding patterns you use to avoid that, you will have to encounter the state change across multiple threads in one way or the other. The only way to create a responsive app is by leaving the UI thread as free as possible, letting all the hard work be done asynchronously by background threads. Kotlin Coroutines by Tutorials will teach you the techniques you need to solve common programming problems using asynchronous programming.
Android & Kotlin
Functional Programming in Kotlin by Tutorials
Functional programming is a powerful paradigm for building your applications. This book will teach you the fundamentals of functional programming in a practical, hands-on way, while showing you how you can safely handle errors and state changes in your programs.
Android & Kotlin
Android App Distribution
If you’re planning on releasing a commercial app to the Google Play Store, you need this book. It will walk you through the entire process of uploading the app to the Play Store, distributing it to testers, creating a release strategy and making sure your users will continue to love it in the future. In short, this book will give you the knowledge you need to distribute an app with the best chance of long-term success.
Android & Kotlin
Android Animations by Tutorials
This is a book about creating meaningful motion through animation in Android for developers who are familiar with the platform but want to create more visually stunning apps. Starting with simple view animations, this book will move through transition animations including shared element animations, list animations, gestures and scrolling. It ends with a taste of using animations in Jetpack Compose.
Multiple Domains
Advanced Git
Master Git! Chances are if you’re involved with software development you’ve heard of and have used Git at some point in your life. Version control systems are critical for any successful collaborative software project. Git is both simple to start using and accommodating for the most complex tasks with version control. Even seasoned Git users hit roadblocks on how to handle common situations. Advanced Git is here to help! This book is the easiest and fastest way to get hands-on experience with using Git for version control of your projects. Take a deep dive into: How Git actually works: After using Git for a while it’s good to discover the whys behind all of the things. Rebasing: Rebasing and squashing doesn’t have to be scary; it’s quite a useful and advanced way of merging code to support your collaborative workflow. Undoing what you’ve done: Most frustration with Git comes from not being able to undo something that you’ve screwed up. But Git has lots of ways you can go back and recover from a weird merge or commit state. Workflows in Git: Working with Git requires some rules to make sure things go smoothly across development teams. Learn the most common workflows and how to decide which one to use. And more! One thing you can count on: after reading this book, you’ll be well-prepared to use Git in your own software development workflow!
Android & Kotlin
Saving Data on Android
Save Data on Android! Persisting data has always been a fundamental part of any app. Saving data locally or remotely with modern techniques for synchronization allows your app to always be up-to-date, reactively presenting fresh data. This book is for intermediate Kotlin or Android developers who want to know how to persist data using the standard Android APIs, the Jetpack DataStore mechanism, the Room Android Architecture Component or Google Firebase’s offerings. Topics Covered in This Book Persistence with Android SDK: Learn how to manage files, SharedPreferences and SQLite databases using the APIs the Android platform offers by default. Jetpack DataStore: Learn how to persist simple data by using key-value pairs. This is Google’s new and improved solution for saving data. In this book, you’ll learn basics about Preferences DataStore and how to migrate from SharedPreferences. Using Room: Room is one of the most important Google Architecture Components. It allows you to manage entities and relationships using classic Object-Oriented principles. In this book, you’ll learn everything you need to store data and run queries on top of it. Managing relationships with Room: A database has entities and relationships. In this book, you’ll learn how to design your database and manage relationships both eagerly and lazily. Managing and testing migrations: Every app evolves over time. Here, you’ll learn how to manage migrations with Room and how to test them properly. Firebase Realtime Database: Google provides tools to manage data both locally and remotely through the Firebase platform. With the Firebase Realtime Database, you can manage and keep data in sync, simply and efficiently. Cloud Storage: Another option Google provides is Cloud Storage, which lets you leverage all the power of Google’s infrastructure to manage your data and run expensive queries.
Android & Kotlin
Android Test-Driven Development by Tutorials
Learn Test-Driven Development on Android! Writing apps is hard. Writing testable apps is even harder, but it doesn’t have to be. Reading and understanding all the official Google documentation on testing can be time-consuming — and confusing. In this book, you’ll learn about Android test-driven development the quick and easy way: by following fun and easy-to-read tutorials. Learn to write sustainable, testable apps, as well as to apply testing strategies to legacy projects via Espresso and UI tests, code coverage and refactoring. This book is for the intermediate Android developers who already know the basics of Android and Kotlin development but want to learn Android test-driven development. Topics Covered in This Book Getting Started with Testing: Learn the core concepts involved in testing including what is a test, why should you test, what should you test and what you should not test. Test-Driven Development (TDD): Discover the Red-Green-Refactor steps and how to apply them. The Testing Pyramid: Learn about the different types of tests and how to organize them. Unit Tests: Learn how to start writing unit tests with TDD using JUnit and Mockito. Integration Tests: Writing tests with different subsystems is a must in today’s complex application world. Learn how to test with different subsystems including the persistence and network layers. Architecting for Testing: Explore how to architect your app for testing and why it matters. TDD on Legacy Projects: Take your TDD to the next level by learning how to apply it to existing legacy projects.
Android & Kotlin
Data Structures & Algorithms in Kotlin
Learn Data Structures & Algorithms in Kotlin! Data structures and algorithms are fundamental tools every developer should have. In this book, you’ll learn how to implement key data structures in Kotlin, and how to use them to solve a robust set of algorithms. This book is for intermediate Kotlin or Android developers who already know the basics of the language and want to improve their knowledge. Topics Covered in This Book Introduction to Kotlin: If you’re new to Kotlin, you can learn the main constructs and begin writing code. Complexity: When you study algorithms, you need a way to compare their performance in time and space. Learn about the Big-O notation to help you do this. Elementary Data Structures: Learn how to implement Linked List, Stacks, and Queues in Kotlin. Trees: Learn everything you need about Trees — in particular, Binary Trees, AVL Trees, as well as Binary Search and much more. Sorting Algorithms: Sorting algorithms are critical for any developer. Learn to implement the main sorting algorithms, using the tools provided by Kotlin. Graphs: Have you ever heard of Dijkstra and the calculation of the shortest path between two different points? Learn about Graphs and how to use them to solve the most useful and important algorithms.
Android & Kotlin
Dagger by Tutorials
Learn about dependency injection with Dagger! Dependency injection is an important technique for building software systems that are maintainable and testable. You’re likely already doing dependency injection, maybe without even realizing it. Dependency injection is nowhere near as complex as its name implies, and this book will guide you through everything you need to know! This book will guide you through Dagger, Google’s framework for Java, Kotlin, and Android. Dagger will help you solve many of the development and performance issues that have plagued reflection-based solutions. This book is for intermediate Kotlin or Android developers who want to know how to implement the dependency injection pattern with Dagger and Hilt libraries.
Android & Kotlin
Reactive Programming with Kotlin
Learn Reactive Programming in Kotlin with RxJava! Not only will you learn how to use RxJava to create complex reactive applications on Android, you’ll also see how to solve common application design issues by using RxJava, RxAndroid and RxKotlin. Finally, you’ll discover how to exercise full control over the library and leverage the full power of reactive programming in your apps. Specifically, learn to handle asynchronous event sequences via two key concepts in Rx—Observables and Observers. Hone your UI development with RxJava and companion libraries to make it easy to work with the UI of your apps, providing a reactive approach to handling user events. Dig into both intermediate and advanced topics, such as error handling, schedulers, app architecture, repositories, and integrating RxJava with Android Jetpack.
Android & Kotlin
Advanced Android App Architecture
In Advanced Android App Architectures, you’ll find a diverse and hands-on approach to architecting your apps on Android. Android development can be fun; however, scaling an app can have its fair share of problems. In this book, you’ll learn why a conversation on architecture is the first important step to taking your app to the next level! This book will introduce you to a number of architectures, including Model View Controller, Model View Presenter, Model View Intent, Model-View-ViewModel and VIPER. You’ll learn theory, explore samples that you will refactor and learn the fundamentals of testing.