Android Studio Koala Essentials-Kotlin Edition
by Neil Smyth
Android Studio Koala Essentials-Kotlin Edition is a comprehensive,
reference-style guide for readers developing and maintaining existing
Android app projects designed using the Android Studio layout editor and
XML-based layouts. Readers new to Android app development or those
starting a new project should consider the Jetpack Compose 1.6
Essentials book, which covers the latest Jetpack Compose approach to app
development.
This book is suitable for novice and experienced programmers. It serves
as a learning tool and a reference guide you can return to as you
progress through the Android app development learning process.
The book takes a step-by-step approach, starting with the basics. It
guides you through installing and using Android Studio and AVD emulators
before delving into the world of Kotlin programming and Android app
development. This systematic approach ensures you build a strong
foundation and gradually progress to advanced development topics.
This work was written and produced entirely by the author. We are proud to be distributing it.
eBook Formats:
Get all eBook formats here for $38.99 (USD)
Add to Cart
This book is a comprehensive guide and reference resource for developing
Android apps using Android Studio Koala Feature Drop (2024.1.2) and the
Kotlin programming language. It is intended to appeal to both beginner
and experienced programmers. The book includes chapters covering Kotlin
programming to help readers with limited programming experience.
The book takes a modular approach to teaching Android app development.
It covers essential topics such as how to install and use Android Studio
and the AVD emulators, followed by an introduction to programming in
Kotlin, including data types, control flow, functions, lambdas, and
object-oriented programming. Asynchronous programming using Kotlin
coroutines and flow is also covered in detail. Chapters also cover the
Android Architecture Components, including view models, lifecycle
management, Room database access, content providers, the Database
Inspector, live data, and data binding.
The concepts of material design are also covered in detail, including
the use of floating action buttons, Snackbars, tabbed interfaces, card
views, navigation drawers, and collapsing toolbars.
Other key features of Android Studio and Android are also covered in
detail, including the Layout Editor, the ConstraintLayout and
ConstraintSet classes, MotionLayout Editor, view binding, constraint
chains, barriers, and direct reply notifications.
What You Need
- Windows 8/10/11 64-bit
- macOS 10.14 or later running on Intel or Apple silicon
- Chrome OS device with Intel i5 or higher
- Linux systems with version 2.31 or later of the GNU C Library
(glibc)
- Android Studio Iguana (2023.2.1)
- Minimum of 8GB of RAM
- Approximately 8GB of available disk space
- 1280 x 800 minimum screen resolution
Source code
Errata
Resources
Releases:
Introduction
2. Setting up an Android Studio Development Environment
3. Creating an Example Android App in Android Studio
excerpt
4. Creating an Android Virtual Device (AVD) in Android Studio
5. Using and Configuring the Android Studio AVD Emulator
6. A Tour of the Android Studio User Interface
7. Testing Android Studio Apps on a Physical Android Device
8. The Basics of the Android Studio Code Editor
9. An Overview of the Android Architecture
10. The Anatomy of an Android App
11. An Introduction to Kotlin
12. Kotlin Data Types, Variables, and Nullability
13. Kotlin Operators and Expressions
14. Kotlin Control Flow
15. An Overview of Kotlin Functions and Lambdas
16. The Basics of Object Oriented Programming in Kotlin
17. An Introduction to Kotlin Inheritance and Subclassing
18. An Overview of Android View Binding
19. Introducing Gemini in Android Studio
20. Understanding Android Application and Activity Lifecycles
21. Handling Android Activity State Changes
22. Android Activity State Changes by Example
23. Saving and Restoring the State of an Android Activity
24. Understanding Android Views, View Groups and Layouts
25. A Guide to the Android Studio Layout Editor Tool
26. A Guide to the Android ConstraintLayout
27. A Guide to Using ConstraintLayout in Android Studio
28. Working with ConstraintLayout Chains and Ratios in Android Studio
29. An Android Studio Layout Editor ConstraintLayout Tutorial
30. Manual XML Layout Design in Android Studio
31. Managing Constraints using Constraint Sets
32. An Android ConstraintSet Tutorial
33. A Guide to Using Apply Changes in Android Studio
34. A Guide to Gradle Version Catalogs
35. An Overview and Example of Android Event Handling
36. Android Touch and Multi-touch Event Handling
37. Detecting Common Gestures Using the Android Gesture Detector Class
38. Implementing Custom Gesture and Pinch Recognition on Android
39. An Introduction to Android Fragments
40. Using Fragments in Android Studio - An Example
41. Modern Android App Architecture with Jetpack
42. An Android ViewModel Tutorial
43. An Android Jetpack LiveData Tutorial
44. An Overview of Android Jetpack Data Binding
45. An Android Jetpack Data Binding Tutorial
46. An Android ViewModel Saved State Tutorial
47. Working with Android Lifecycle-Aware Components
48. An Android Jetpack Lifecycle Awareness Tutorial
49. An Overview of the Navigation Architecture Component
50. An Android Jetpack Navigation Component Tutorial
51. An Introduction to MotionLayout
excerpt
52. An Android MotionLayout Editor Tutorial
53. A MotionLayout KeyCycle Tutorial
54. Working with the Floating Action Button and Snackbar
55. Creating a Tabbed Interface using the TabLayout Component
56. Working with the RecyclerView and CardView Widgets
57. An Android RecyclerView and CardView Tutorial
58. Working with the AppBar and Collapsing Toolbar Layouts
59. An Overview of Android Intents
60. Android Explicit Intents - A Worked Example
61. Android Implicit Intents - A Worked Example
62. Android Broadcast Intents and Broadcast Receivers
63. An Introduction to Kotlin Coroutines
64. An Android Kotlin Coroutines Tutorial
65. An Overview of Android Services
66. Android Local Bound Services - A Worked Example
67. Android Remote Bound Services - A Worked Example
68. An Introduction to Kotlin Flow
69. An Android SharedFlow Tutorial
70. An Overview of Android SQLite Databases
71. An Android SQLite Database Tutorial
72. Understanding Android Content Providers
73. An Android Content Provider Tutorial
74. An Android Content Provider Client Tutorial
75. The Android Room Persistence Library
76. An Android TableLayout and TableRow Tutorial
77. An Android Room Database and Repository Tutorial
78. Video Playback on Android using the VideoView and MediaController
Classes
79. Android Picture-in-Picture Mode
80. An Android Picture-in-Picture Tutorial
81. Making Runtime Permission Requests in Android
82. Android Audio Recording and Playback using MediaPlayer and
MediaRecorder
83. An Android Notifications Tutorial
84. An Android Direct Reply Notification Tutorial
85. Working with the Google Maps Android API in Android Studio
86. Printing with the Android Printing Framework
87. An Android HTML and Web Content Printing Example
88. A Guide to Android Custom Document Printing
89. An Introduction to Android App Links
90. An Android Studio App Links Tutorial
91. An Android Biometric Authentication Tutorial
92. Creating, Testing, and Uploading an Android App Bundle
93. An Overview of Android In-App Billing
94. An Android In-App Purchasing Tutorial
95. Accessing Cloud Storage using the Android Storage Access Framework
96. An Android Storage Access Framework Example
97. An Android Studio Primary/Detail Flow Tutorial
98. Working with Material Design 3 Theming
99. A Material Design 3 Theming and Dynamic Color Tutorial
100. An Overview of Gradle in Android Studio
Index
Author
Neil Smyth has more than 25 years of experience in the IT industry,
including software development, project management, and marketing. He
has a Bachelor of Science degree in Information Technology and holds
several certifications, including A+, Security+, Network+,
Project+, Java Associate, and Microsoft Certified Professional. Neil
is also a CIW Database Design Specialist.
Neil is the co-founder and CEO of Payload Media, Inc., a technical
content publishing company. He is also an author who has written several
programming and system administration books under the “Essentials”
range. Notable titles include Android Studio Development Essentials,
Jetpack Compose
Essentials,
iOS App Development
Essentials,
and Ubuntu Essentials.