Manifest Android Interview
$42.99
Minimum price
$52.99
Suggested price

Manifest Android Interview

The ultimate guide to cracking Android technical interviews

About the Book

Manifest Android Interview is a comprehensive guide designed to enhance your Android development expertise through 108 interview questions with detailed answers, 162 additional practical questions, and 50+ "Pro Tips for Mastery" sections. The interview questions primarily focus on Android development—including the Framework, UI, Jetpack Libraries, and Business Logic—as well as Jetpack Compose, covering Fundamentals, Runtime, and UI.

Each question provides in-depth explanations, guiding you through a structured learning path for Android and Jetpack Compose while reinforcing your understanding of key concepts. At the end of every question, you’ll find practical questions designed to simulate real interview scenarios, allowing you to refine your problem-solving skills and prepare effectively for technical discussions.

This book includes relevant resources and additional references for those seeking further study beyond its content. Efforts have been made to provide footnotes for key terms as much as possible that may be unfamiliar or complex, ensuring that beginners can easily grasp challenging concepts while deepening their understanding.

The "Pro Tips for Mastery" section dives deeper into advanced topics, uncovering internal API structures and offering expert insights to keep senior developers engaged. For mid-level developers, this section serves as a valuable resource for strengthening Android expertise and fostering a more analytical approach to technical challenges.

I hope this book helps you gain new perspectives, sharpen your problem-solving skills, and build a comprehensive understanding of Android development & ecosystems. Whether you're preparing for your next big interview or simply pushing yourself to master Android development, I encourage you to think beyond implementation—understand the why, experiment with different approaches, and continue learning with curiosity and passion.

Jaewoong Eum (skydoves)

For fun facts, who it's for, what it covers, and what it doesn’t, check out Manifest Android Interview: The Ultimate Guide to Cracking Android Technical Interviews blog post.

  • Share this book

  • Categories

    • Computers and Programming
    • Android
    • Kotlin
    • Engineering
    • Software
    • Software Engineering
    • Software Architecture
  • Feedback

    Email the Author(s)

About the Author

Jaewoong
Jaewoong

The author of this book, Jaewoong Eum (known as skydoves), is a Google Developer Expert (GDE) for Android, Kotlin, and Firebase, an open-source developer created over 80+ open-source libraries and projects, collectively amassing 15+ million downloads annually. The author is also the founder of Dove Letter—a subscription-based repository dedicated to sharing, learning, and discussing Android and Kotlin development.

Team Discounts

Get a team discount on this book!

Up to 3 Team Members
Minimum price$107.00Suggested price$137.00
Up to 5 Team Members
Minimum price$171.00Suggested price$219.00
Up to 10 Team Members
Minimum price$300.00Suggested price$384.00
Up to 15 Team Members
Minimum price$429.00Suggested price$549.00
Up to 25 Team Members
Minimum price$644.00Suggested price$824.00
Up to 50 Team Members
Minimum price$1,288.00Suggested price$1,648.00

Reader Testimonials

Manuel Vivo
Manuel Vivo

Staff Android Engineer at Bumble, Ex Android DevRel at Google

Manifest Android Interview stands as an essential guide for Android developers tackling theory-heavy technical interviews. It seamlessly blends deep technical insights, practical examples, and thoughtful 'Pro Tips for Mastery' sections. The knowledge in this book makes it an invaluable resource for confidently navigating and succeeding in Android interviews.

Matt McKenna
Matt McKenna

Senior Android Engineer at Block, Android GDE

Manifest Android Interview is perfect for brushing up on fundamentals, preparing for interviews, and revisiting best practices. Its clear structure, searchable format, and thoughtful questions make it a go-to resource for both learning and revisiting core Android concepts.

Alejandra Stamato
Alejandra Stamato

Lead Android Engineer at HubSpot, Ex Android DevRel at Google

Guided by thoughtfully crafted questions, insightful tips, and clear code samples, Manifest Android Interview helps you not only reinforce core Android concepts (e.g. manifest file, lifecycle, intent, service, content providers, broadcast receivers, deep links) but also explore every aspect of building software for Android, from ViewModel to the View system to Jetpack Compose and all in between. No matter your level of expertise, this book offers something for everyone. If you're preparing for your dream role or simply expanding your expertise in the platform we all love, this resource will be an invaluable companion on your journey.

Simona Milanovic
Simona Milanovic

Senior Android Developer Relations Engineer

Jaewoong (known to many of us in the Android community as skydoves), and his new book "Manifest Android Interview," are a must-have for anyone getting ready for an interview, or just wanting to brush up on their Android skills. It’s an extensive, detailed, and well-structured resource that contains everything from the basics to the nitty-gritty of the Compose runtime and UI. Being biased, I was especially focused on the Jetpack Compose part and found it to be super helpful, particularly for interview prep. It consistently answers the tough and practical “whys” and “hows” to help you learn and improve your problem-solving, in a way that is very similar to content in real interviews. Whether you're new to Compose or getting ready for an interview, this book will certainly boost your Android knowledge and interview confidence.

Table of Contents

    • Preface
    • Testimonial
        • Manuel Vivo (Staff Android Engineer at Bumble, Ex Android DevRel at Google)
        • Matt McKenna (Senior Android Engineer at Block, Android GDE)
        • Alejandra Stamato (Lead Android Engineer at HubSpot, Ex Android DevRel at Google)
        • Simona Milanovic (Senior Android Developer Relations Engineer)
    • About This Book
      • To. Interviewees
      • To. Interviewers
      • Issue Reports & Discussion
    • Sponsors
        • Stream
    • 0. Android Interview Questions
      • Category 0: The Android Framework
        • Q) 0. What is Android?
        • Q) 1. What is Intent?
        • Q) 2. What is the purpose of Pending Intent?
        • Q) 3. What are the differences between Serializable and Parcelable
        • Q) 4. What is Context and what types of Context exist?
        • Q) 5. What is Application class?
        • Q) 6. What is the purpose of the AndroidManifest file?
        • Q) 7. Describe the Activity lifecycle
        • Q) 8. Describe the Fragment lifecycle
        • Q) 9. What is Service?
        • Q) 10. What is BroadcastReceiver?
        • Q) 11. What is the purpose of a ContentProvider, and how does it facilitate secure data sharing between applications?
        • Q) 12. How to handle configuration changes?
        • Q) 13. How Android handles memory management, and how do you avoid memory leaks?
        • Q) 14. What are the main causes of ANR errors, and how can you prevent them from occurring?
        • Q) 15. How do you handle deep links?
        • Q) 16. What are tasks and back stack?
        • Q) 17. What’s the purpose of Bundle?
        • Q) 18. How do you pass data between Activities or Fragments
        • Q) 19. What happens to an Activity during configuration changes?
        • Q) 20. What is ActivityManager?
        • Q) 21. What are the advantages of using SparseArray
        • Q) 22. How do you handle runtime permissions?
        • Q) 23. What are the roles of Looper, Handler, and HandlerThread?
        • Q) 24. How do you trace exceptions?
        • Q) 25. What are build variants and flavors?
        • Q) 26. How do you ensure accessibility?
        • Q) 27. What is the Android file system?
        • Q) 28. What are Android Runtime (ART), Dalvik, and Dex Compiler?
        • Q) 29. What are the differences between the APK file and the AAB file?
        • Q) 30. What is R8 optimization?
        • Q) 31. How do you reduce application sizes?
        • Q) 32. What is a process in Android applications, and how does the Android operating system manage it?
      • Category 1: Android UI - Views
        • Q) 33. Describe the View lifecycle
        • Q) 34. What’s the difference between View and ViewGroup?
        • Q) 35. Have you ever used ViewStub and how do you optimize UI performance using it?
        • Q) 36. How to implement custom views?
        • Q) 37. What is Canvas and how to utilize it?
        • Q) 38. What is the invalidation in the View system?
        • Q) 39. What is ConstraintLayout?
        • Q) 40. When should you use SurfaceView instead of TextureView?
        • Q) 41. How does RecyclerView work internally?
        • Q) 42. What’s the difference between Dp and Sp?
        • Q) 43. What is the use of a nine-patch image?
        • Q) 44. What is a Drawable, and how is it used in UI development?
        • Q) 45. What is Bitmap on Android, and how would you handle large Bitmaps efficiently?
        • Q) 46. How do you implement animations?
        • Q) 47. What is the Window?
        • Q) 48. How do you render a web page?
      • Category 2: Jetpack Library
        • Q) 49. What is the AppCompat library?
        • Q) 50. What is the Material Design Components (MDC)?
        • Q) 51. What is the advantages of using ViewBinding?
        • Q) 52. How DataBinding works?
        • Q) 53. What is LiveData?
        • Q) 54. What is Jetpack ViewModel?
        • Q) 55. What is the Jetpack Navigation Library?
        • Q) 56: What are Dagger 2 and Hilt?
        • Q) 57. What is the Jetpack Paging library?
        • Q) 58. What is Baseline Profile?
      • Category 3: Business Logic
        • Q) 59. How would you manage long-running background tasks?
        • Q) 60. How do you serialize Json format to object
        • Q) 61. How do you handle network requests to fetch data, and which libraries or techniques do you use for efficiency and reliability?
        • Q) 62. Why is a paging system essential for loading large datasets, and how can it be implemented with RecyclerView?
        • Q) 63. How do you fetch and render images from the network?
        • Q) 64. How do you store and persist data locally?
        • Q) 65. How do you handle offline-first features?
        • Q) 66. Where do you launch tasks for loading the initial data? LaunchedEffect vs. ViewModel.init()
    • 1. Jetpack Compose Interview Questions
      • Category 0: Compose Fundamentals
        • Q) 0. What is the structure of Jetpack Compose?
        • Q) 1. What are the Compose phases?
        • Q) 2. Why is Jetpack Compose a declarative UI framework?
        • Q) 3. What is recomposition, and when does it occur? Also, how does it related to the app performance?
        • Q) 4. How the composable function works internally?
        • Q) 5. What is stability in Jetpack Compose, and how does it relate to performance?
        • Q) 6. Have you ever had experience optimizing Compose performance by improving stabilities?
        • Q) 7. What is composition and how to create it?
        • Q) 8. What strategies are available for migrating the XML-based project to Jetpack Compose?
        • Q) 9. Why should you always test Compose performance in release mode?
        • Q) 10. What Kotlin idioms frequrently used in Jetpack Compose?
      • Category 1: Compose Runtime
        • Q) 11. What is State and which APIs are used to manage it?
        • Q) 12. What are the advantages you can take from the state hoisting?
        • Q) 13. What are the differences between remember and rememberSaveale?
        • Q) 14. How do you safely create a coroutine scope within composable functions?
        • Q) 15. How do you handle side effects inside composable functions?
        • Q) 16. What is the purpose of rememberUpdatedState, and how does it work?
        • Q) 17. What is the purpose of produceState, and how does it work?
        • Q) 18. What is snapshotFlow and how does it work?
        • Q) 19. What is the purpose of derivedStateOf, and how does it help optimize recomposition?
        • Q) 20. What’s the lifecycle of composable functions or Composition?
        • Q) 21. What is SaveableStateHolder?
        • Q) 22. What’s the purpose of the snapshot system?
        • Q) 23. What are the mutableStateListOf and mutableStateMapOf
        • Q) 24. How can you safely collect Kotlin’s Flow in composable functions while preventing memory leaks?
        • Q) 25. What’s the role of the CompositionLocals?
      • Category 2: Compose UI
        • Q) 26. What’s Modifier?
        • Q) 27. What is Layout?
        • Q) 28. What is Box?
        • Q) 29. What are the differences between Arrangement and Alignment?
        • Q) 30. What is Painter?
        • Q) 31. How do you load images from the network?
        • Q) 32. How can you efficiently render hundreds of items as a list in while avoiding UI jank?
        • Q) 33. How do you implement pagination with lazy lists?
        • Q) 34. What is Canvas?
        • Q) 35. Have you ever utilized graphicsLayer Modifier?
        • Q) 36. How do you implement visual animations in Jetpack Compose?
        • Q) 37. How do you navigate between screens?
        • Q) 38. How preview works and how do you handle them?
        • Q) 39. How do you write unit tests for Compose UI components or screens?
        • Q) 40. What is screenshot testing, and how does it help ensure UI consistency during development?
        • Q) 41. How do you ensure accessibility in Jetpack Compose?

Translation Bundles

$105.98
Bought separately
$62.99
Minimum price
$72.99
Suggested price
$105.98
Bought separately
$62.99
Minimum price
$72.99
Suggested price
$105.98
Bought separately
$62.99
Minimum price
$72.99
Suggested price

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.

You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!

So, there's no reason not to click the Add to Cart button, is there?

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

In fact, authors have earnedover $14 millionwriting, publishing and selling on Leanpub.

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub