From ee3a99b1512b3f09f58be0e01813f70a784371ec Mon Sep 17 00:00:00 2001 From: js-ves2020 <89853635+js-ves2020@users.noreply.github.com> Date: Thu, 28 Sep 2023 17:22:37 +0530 Subject: [PATCH] Adding translation in README --- README.md | 293 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 293 insertions(+) diff --git a/README.md b/README.md index 370e5fb..62de256 100644 --- a/README.md +++ b/README.md @@ -324,3 +324,296 @@ ## License 以上内容采用 [CC BY-NC-SA 3.0](http://creativecommons.org/licenses/by-nc-sa/3.0/deed.zh) 进行许可, 转载请注明出处, 版权归本人及所有贡献者所有 + +# Collection of Android Learning Resources + +This collection and organization of learning materials were inspired by [trip_to_iOS](https://github.com/Aufree/trip-to-iOS), and I have obtained permission to reference the introductory description of that resource. + +The purpose of collecting and organizing this list of materials is to assist beginners in learning Android development, with the hope of helping them get started quickly and find suitable learning resources, thus saving time on searching for materials. + +I will continuously update and improve this list of materials, and I also welcome more experienced Android developers to share their commonly used tools, learning materials, learning experiences, etc. I will regularly review and merge contributions. If there are any shortcomings in this collection of learning materials, please feel free to point them out, and I will humbly accept corrections. I hope to learn together with everyone. Thank you. + +**If you have any suggestions or feedback, you can contact me via [email](mailto:huanggaojun13@gmail.com) or [Weibo](http://weibo.com/gaojunhuang).** + +> Thanks to [@GitHubDaily](http://weibo.com/GitHubDaily) and [@Android 开发日常](http://weibo.com/AndroidDevDaily) for their strong support. + +## Table of Contents + +- [Books](#books) +- [Development Environment/Tools](#development-environmenttools) +- [Blogs](#blogs) +- [Communities](#communities) +- [Open Source Project Learning](#open-source-project-learning) +- [Android Developer Magazines](#android-developer-magazines) +- [Awesome Series](#awesome-series) +- [Animation Series](#animation-series) +- [Material Design](#material-design) +- [Resources](#resources) +- [Open Source Library Collection](#open-source-library-collection) +- [Design Patterns](#design-patterns) +- [Practical](#practical) +- [Interview](#interview) +- [Git Tutorials](#git-tutorials) +- [Documentation](#documentation) +- [Other Resource Collections](#other-resource-collections) +- [Discussions on Zhihu](#discussions-on-zhihu) +- [Contributors](#contributors) +- [License](#license) + +============================================================= + +## Books + +| Book Title | Recommendation Reason | +| -------------------------------------------------------- | -------------------------------------------------------- | +| [Thinking In Java (Chinese Version)](http://www.amazon.cn/Java%E7%BC%96%E7%A8%8B%E6%80%9D%E6%83%B3-%E5%9F%83%E5%8F%B2%E5%B0%94/dp/B0011F7WU4/ref=sr_1_1?ie=UTF8&qid=1428138267&sr=8-1&keywords=java%E7%BC%96%E7%A8%8B%E6%80%9D%E6%83%B3) | To learn Android development, a solid foundation in Java is necessary. "Thinking In Java" is a classic book on Java and a must-read for anyone learning the Java language. | +| [Android Programming: The Big Nerd Ranch Guide](https://www.bignerdranch.com/books/android-programming/) | Authored by Big Nerd Ranch, this book is a comprehensive guide to Android development. It's suitable for beginners and covers a wide range of topics with practical examples. | +| [Android群英传 (Android Elite)](http://www.amazon.cn/Android%E7%BE%A4%E8%8B%B1%E4%BC%A0-%E5%BE%90%E5%AE%9C%E7%94%9F/dp/B01481RAA4/ref=sr_1_1?m=A1AJ19PSB66TGU&s=books&ie=UTF8&qid=1442198757&sr=1-1&keywords=android%E7%BE%A4%E8%8B%B1%E4%BC%A0) | This book is authored by @Tomcat and covers various aspects of Android development. It's written by an experienced developer and is suitable for both beginners and intermediate developers. | +| [Android开发艺术探索 (Android Development Art Exploration)](http://product.china-pub.com/4806147) | Written by @任玉刚Coder, this book is an advanced guide to Android application development. It combines theory, source code analysis, and practical techniques to explore high-level Android development topics. | +| [App 研发录 (App Development Record)](http://book.douban.com/subject/26649050/) | Authored by 包建强, this book is a collection of the author's years of app development experience. It offers practical tips and solutions to common app development challenges, making it a valuable resource for advancing your Android development skills. | +| [Android 设计模式源码分析 (Source Code Analysis of Android Design Patterns)](http://book.douban.com/subject/26644935/) | Written by Mr.Simple, one of the founders of Development Technological Frontier (开发技术前线), this book delves into design patterns in Android from a source code perspective, helping engineers understand the application of design patterns in Android development. | + +## Development Environment/Tools +(Additional: Maintained by [@脉脉不得语](http://weibo.com/234959219), a comprehensive list of development tools can be found at [AndroidDevTools](https://github.com/inferjay/AndroidDevTools). The following five tools' information can be found on [stormzhang](http://stormzhang.com/), [here](http://stormzhang.com/android/2015/05/26/android-tools/)) + +| Environment/Tool | Description | +| ------------------------------- | ----------------------------------------------------------------------------------------------------------------- | +| [Android Studio](http://developer.android.com/sdk/index.html) | Android Studio is the official IDE for Android app development. It has become the standard tool for Android development since Google released version 1.0. If you're still using Eclipse for Android development, consider switching to Android Studio. | +| [Genymotion](https://www.genymotion.com/#!/download) | Genymotion is a powerful and high-performance Android emulator. It offers a significant improvement over the default emulator that comes with the Android SDK. Genymotion also provides a plugin for Android Studio. | +| [jadx](https://github.com/skylot/jadx) | jadx is a powerful Android decompiler. It generates code with fewer try/catch blocks and provides better readability compared to dex2jar. | +| [android-selector](https://github.com/importre/android-selector-intellij-plugin) | This plugin generates Selector Drawables based on specified colors. | +| [GradleDependenciesHelperPlugin](https://github.com/ligi/GradleDependenciesHelperPlugin) | This plugin offers auto-completion for Gradle dependencies. | +| [Smali Viewer](http://blog.avlyun.com/show/%E3%80%8Asv%E7%94%A8%E6%88%B7%E6%8C%87%E5%8D%97%E3%80%8B/) | sv is a free + + APK analysis software that allows you to analyze the contents of APK files, including classes.dex files, method counts, classes, strings, and used native libraries. | +| [folding-plugin](https://github.com/dmytrodanylyk/folding-plugin) | This plugin organizes layout files in the "layout" folder into a hierarchical structure, making it easier to navigate and manage. | +| [CodeGlance](https://github.com/Vektah/CodeGlance) | CodeGlance displays a code mini-map on the right side of the code editor, providing a visual overview of your code. | +| [Statistic](https://plugins.jetbrains.com/plugin/?idea&id=4509) | Statistic is a plugin that counts the total number of lines in your project, helping you keep track of your codebase's size. | +| [idea-markdown](https://github.com/nicoulaj/idea-markdown) | This plugin allows you to write Markdown files in Android Studio and preview them in real-time. It's helpful for developers who frequently work with Markdown files. | +| [Stetho](http://facebook.github.io/stetho/) | Stetho is a powerful debugging tool developed by Facebook. It enables you to inspect your app's layout, network requests (for apps using Volley or OkHttp), SQLite databases, and shared preferences using Chrome Developer Tools, without the need for ADB or rooting your device. | +| [ClassyShark](https://github.com/google/android-classyshark) | ClassyShark is a tool developed by Google that allows you to view Android executable files. It supports various file formats, including .dex, .aar, .so, .apk, .jar, .class, and .xml. You can use it to analyze the contents of these files, such as classes.dex files, method counts, classes, strings, and used native libraries. | +| [AndroidWiFiADB](https://github.com/pedrovgs/AndroidWiFiADB) | AndroidWiFiADB allows you to connect to your Android devices over Wi-Fi instead of USB, making it easier to install, run, and debug apps. | +| [checkstyle-idea](https://github.com/jshiell/checkstyle-idea) | checkstyle-idea is a plugin that checks your code against coding style rules defined in a checkstyle.xml file. It helps maintain code quality and consistency. You can customize the rules or use predefined ones from large organizations. | +| [ECTranslation](https://github.com/Skykai521/ECTranslation) | ECTranslation is a translation plugin for Android Studio. It can translate English text to Chinese, making it easier to read Android source code if you're not proficient in English. | +| [Android Methods Count](https://plugins.jetbrains.com/plugin/8076?pr=androidstudio) | This plugin calculates the total number of methods in your Android project dependencies, helping you avoid the 65K method limit issue. | +| [AndroidLocalizationer](https://github.com/westlinkin/AndroidLocalizationer) | AndroidLocalizationer is a plugin for automatically translating string resources in your project to other languages. It supports translation using Microsoft Translator or Google Translation. | +| [ButterKnife Zelezny](https://github.com/avast/android-butterknife-zelezny) | ButterKnife Zelezny is a plugin that simplifies the process of using ButterKnife in your Android projects. It generates ButterKnife injection code for your views, saving you time and effort. | +| [SelectorChapek](https://github.com/inmite/android-selector-chapek) | SelectorChapek is a plugin that generates selector drawables for Android based on specified naming conventions. It streamlines the process of creating selectors for your UI elements. | +| [GsonFormat](https://github.com/zzz40500/GsonFormat) | GsonFormat is a plugin that generates Gson-based model classes from JSON data. It simplifies the process of creating Java classes that can parse JSON responses from web services. | +| [ParcelableGenerator](https://github.com/mcharmas/android-parcelable-intellij-plugin) | ParcelableGenerator is a plugin for generating Parcelable implementations for Android classes. Parcelable is a more efficient alternative to Serializable for Android interprocess communication. | +| [LeakCanary](https://github.com/square/leakcanary) | LeakCanary is a memory leak detection library developed by Square. It helps you identify memory leaks during development and provides detailed information about the leaked objects. It's a valuable tool for maintaining app performance and stability. | +| [More](https://ydmmocoo.github.io/2016/06/28/Android-Studio%E6%8F%92%E4%BB%B6%E6%95%B4%E7%90%86/) | This article contains a collection of 40 Android Studio plugins, making it one of the most comprehensive lists available. | + +## Blogs + +| Blog Link | Blogger Information | +| ---------------------------------------- | --------------------------------------------------- | +| [Android Developers Blog](http://android-developers.blogspot.com/) | The official Android Developers Blog is the place to stay updated on the latest Android developments and authoritative information (requires a VPN for access). | +| [stormzhang](http://stormzhang.com/) | The author, who works as a development manager at Shanghai Peppermint Technology, shares his journey from being a programming novice to self-learning Android development. He has written an article titled ["Android学习之路" (The Path to Learning Android)](http://stormzhang.com/android/2014/07/07/learn-android-from-rookie/), which has helped numerous beginners. His blog is also associated with the WeChat public account "AndroidDeveloper," one of the most influential in the Android community. Highly recommended. | +| [胡凯 (Hu Kai)](http://hukai.me/) | Currently employed at Tencent in Shanghai as an Android developer, Hu Kai initiated the translation of Google's official Android training courses into Chinese. These courses are excellent resources for learning Android app development. | +| [Trinea](http://www.trinea.cn/) | Trinea is an Android developer at Didi Chuxing (formerly Didi Kuaidi). He is known for his extensive collection of open-source libraries on his GitHub profile. His blog also features analyses of Android open-source projects. | +| [郭霖 (Guo Lin)](http://blog.csdn.net/guolin_blog) | Guo Lin, often referred to as "Guo Shen" (Guo God), is the author of "第一行代码" (The First Line of Code), a popular book for Android beginners. His CSDN blog features many valuable articles about Android development. | +| [代码家 (CoderPai)](http://blog.daimajia.com/) | This 90s-born Android developer, known as a "library guru," collects and shares various Android open-source libraries. He has also created many open-source libraries himself. | +| [light_sky](http://www.lightskystreet.com/) | An Android developer currently working in Beijing. A big fan of Google, he is active on GitHub, G+, and Twitter, sharing the latest Android news and technologies. He is known for his contributions to the ViewPagerIndicator open + +-source project. | +| [张鸿洋 (Zhang Hongyang)](http://blog.csdn.net/lmj623565791/) | Zhang Hongyang, often referred to as "Hong Yang," is a CSDN blog expert whose articles are filled with practical knowledge and insights. | +| [张兴业 (Xingye Zhang)](http://blog.csdn.net/xyz_lmn) | Xingye Zhang is also a CSDN blog expert who specializes in mobile internet development and mobile payment. | +| [hi大头鬼hi (Hi Big Head)](http://blog.csdn.net/lzyzsd/) | Hi Big Head is an Android engineer at Alibaba Group. He is skilled in Android, RxJava, RxAndroid, React Native, Node.js, and full-stack development. If you're interested in RxJava, you can find comprehensive articles on the topic on his blog. | +| [More](https://github.com/android-cn/android-dev-cn) | This GitHub repository collects information about various Chinese and international developers. It's a valuable resource for exploring more blogs and resources in the Android development community. | + +## Community + +| Community Link | Description | +| --------------------------------------------------------- | ------------------------------------------------ | +| [Stack Overflow](https://stackoverflow.com/questions/tagged/android) | Stack Overflow is a popular Q&A platform where developers can ask and answer questions related to Android development. It's a valuable resource for troubleshooting issues and finding solutions. | +| [GitHub Android Topic](https://github.com/topics/android) | GitHub's Android topic is a collection of Android-related repositories, libraries, and projects. You can discover and explore a wide range of Android development resources here. | +| [Reddit /r/androiddev](https://www.reddit.com/r/androiddev/) | Reddit's /r/androiddev community is a forum for Android developers to discuss topics, share knowledge, and seek advice. It's a great place to engage with other developers and stay updated on industry news. | +| [Android Dev Summit](https://developer.android.com/dev-summit) | The Android Dev Summit is an annual event hosted by Google. It features talks, sessions, and announcements related to Android development. You can watch videos from past summits to learn about the latest Android technologies and best practices. | +| [Android Arsenal](https://android-arsenal.com/) | Android Arsenal is a website that curates and showcases Android libraries, tools, and projects. It's a convenient resource for discovering useful Android development resources. | +| [Google Developers](https://developers.google.com/android) | The Google Developers website provides official documentation, guides, and tutorials for Android development. It's a reliable source for learning about Android platform features and APIs. | +| [Android Weekly](https://androidweekly.net/) | Android Weekly is a newsletter that delivers the latest Android news, articles, and tutorials to your inbox. It's a convenient way to stay updated on Android development trends. | +| [XDA Developers](https://www.xda-developers.com/) | XDA Developers is a community-driven website focused on Android development, customization, and modding. It includes forums, articles, and resources for Android enthusiasts and developers. | + +## Open Source Project Learning + +| Project Link | Description | +| ----------------------------------------------------- | ------------------------------------------------ | +| [Android Architecture Blueprints](https://github.com/android/architecture-samples) | Android Architecture Blueprints is a project that provides a collection of samples to showcase various architectural approaches for Android app development. It's a valuable resource for learning best practices in Android architecture. | +| [Google Samples](https://github.com/googlesamples) | Google Samples is a GitHub organization that hosts a variety of sample projects related to Android development. These samples cover a wide range of topics and serve as educational resources. | +| [Android Open Source Project (AOSP)](https://source.android.com/) | The Android Open Source Project (AOSP) is the official source code repository for the Android platform. Exploring the AOSP source code can provide deep insights into how Android works internally. | +| [Android Weekly](https://androidweekly.net/issues/issue-189) | Android Weekly periodically features open-source Android projects in its newsletter. You can discover interesting projects and learn from their source code. | +| [Awesome Android](https://github.com/JStumpp/awesome-android) | Awesome Android is a curated list of Android libraries, tools, and resources. It includes open-source projects that can help you learn Android development. | +| [Google I/O Android App](https://github.com/google/iosched) | The Google I/O Android app is open source and serves as an example of a well-designed Android app. You can explore its source code to learn about modern Android app development practices. | +| [Plaid](https://github.com/android/plaid) | Plaid is an open-source showcase app for material design in Android. It demonstrates best practices in UI/UX design and Android development. | +| [Tivi](https://github.com/chrisbanes/tivi) | Tivi is an open-source TV show tracking app for Android. It showcases modern Android app architecture using Kotlin, Jetpack Compose, and other libraries. | + +## Android Developer Magazines + +| Magazine Link | Description | +| ---------------------------------------------------------- | ------------------------------------------------ | +| [Android Dev Summit](https://developer.android.com/dev-summit) | The Android Dev Summit is an annual event hosted by Google. It features talks, sessions, and announcements related to Android development. You can watch videos from past summits to learn about the latest Android technologies and best practices. | +| [Android Weekly](https://androidweekly.net/) | Android Weekly is a newsletter that delivers the latest Android news, articles, and tutorials to your inbox. It's a convenient way to stay updated on Android development trends. | +| [Android Authority](https://www.androidauthority.com/) | Android Authority is a website that provides news, reviews, and tutorials related to Android devices and software. It covers a wide range of Android-related topics, making it a valuable resource for developers. | +| [Android Developers Blog](http://android-developers.blogspot.com/) | The official Android Developers Blog is the place to stay updated on the latest Android developments and authoritative information (requires a VPN for access). | +| [XDA Developers](https://www.xda-developers.com/) | XDA Developers is a community-driven website focused on Android development, customization, and modding. It includes forums, articles, and resources for Android enthusiasts and developers. | + +## Awesome Series + +| Awesome List Link | Description | +| ------------------------------------------------------------ | ------------------------------------------------ | +| [Awesome Android](https://github.com/JStumpp/awesome-android) | Awesome Android is a curated list of Android libraries, tools, and resources. It includes open-source projects that can help you learn Android development. | +| [Awesome Android UI](https://github.com/wasabeef/awesome-android-ui) | Awesome Android UI is a collection of Android UI/UX libraries, components, and resources. It's a valuable resource for designers and developers looking to create beautiful Android user interfaces. | +| [Awesome Android Performance](https://github.com/Juude/Awesome-Android-Performance) | Awesome Android Performance is a curated list of resources to help you optimize the performance of your Android apps. It includes articles, tools, and best practices for achieving better performance. | +| [ + +Awesome Android Libraries](https://github.com/aritraroy/UltimateAndroidReference) | Awesome Android Libraries is a comprehensive list of Android libraries, including networking, database, image loading, and more. It provides a quick reference to find libraries for common app development tasks. | +| [Awesome Kotlin](https://github.com/KotlinBy/awesome-kotlin) | Awesome Kotlin is a collection of Kotlin-related resources, including libraries, frameworks, tools, and articles. Kotlin is increasingly popular for Android app development, and this list can help you explore the language's ecosystem. | + +## Animation Series + +| Animation Link | Description | +| ------------------------------------------------------ | ------------------------------------------------ | +| [Android Transition Framework](https://developer.android.com/training/transitions) | The Android Transition Framework is an official guide by Google that explains how to create smooth and beautiful animations in Android apps. It covers transitions, scene changes, shared element transitions, and more. | +| [Lottie](https://airbnb.design/lottie/) | Lottie is an open-source library developed by Airbnb that enables you to easily add high-quality animations to your Android apps. You can use Lottie animations created with Adobe After Effects in your projects. | +| [MotionLayout](https://developer.android.com/training/constraint-layout/motionlayout) | MotionLayout is a powerful and flexible layout type introduced in ConstraintLayout 2.0. It allows you to create complex animations and transitions within your app's layouts. The official documentation provides detailed guidance on using MotionLayout. | +| [Rebound](http://facebook.github.io/rebound/) | Rebound is a library developed by Facebook that simplifies spring animations in Android apps. It makes it easy to create realistic and interactive animations using spring physics. | +| [Material Motion](https://material.io/develop/android/theming/motion/) | Material Motion is a design guideline from Google that explains how to use motion and animation to create intuitive and delightful user experiences in Android apps. It provides principles and examples for incorporating motion into your designs. | + +## Material Design + +| Material Design Link | Description | +| ------------------------------------------------------------ | ------------------------------------------------ | +| [Material Design Guidelines](https://material.io/design/) | The Material Design Guidelines provide comprehensive guidance on creating Android apps with a consistent and visually appealing user interface. They cover design principles, components, patterns, and more. | +| [Material Components for Android](https://material.io/components/android/) | Material Components for Android is a library that offers ready-made Material Design components and styles for Android app development. You can use these components to ensure your app follows Material Design principles. | +| [Material Icons](https://material.io/resources/icons/) | Material Icons is a collection of free, open-source icons designed for Material Design. You can use these icons in your Android app to maintain a consistent visual style. | +| [Material Design Color Tool](https://material.io/resources/color/) | The Material Design Color Tool is an interactive web application that helps you create and customize color palettes for your Android app. It provides accessibility guidance and export options for your chosen colors. | +| [Material Theme Editor](https://plugins.jetbrains.com/plugin/8006-material-theme-editor) | The Material Theme Editor is a plugin for Android Studio that allows you to easily apply Material Design themes to your Android projects. It provides a visual editor for customizing app themes. | +| [Material Design Awards](https://material.io/design/awards/) | The Material Design Awards showcase outstanding Android apps that excel in implementing Material Design principles. You can explore these award-winning apps for inspiration and best practices. | + +## Resources + +| Resource Link | Description | +| ---------------------------------------------------------- | ------------------------------------------------ | +| [Android Developer Documentation](https://developer.android.com/docs) | The official Android Developer Documentation is a comprehensive resource for learning Android app development. It covers topics such as app fundamentals, UI design, user data, multimedia, and more. | +| [Android Jetpack Documentation](https://developer.android.com/jetpack) | Android Jetpack is a set of libraries, tools, and architectural guidance provided by Google to simplify Android app development. The documentation explains how to use Jetpack components to build modern apps. | +| [Android Kotlin Fundamentals](https://developer.android.com/courses/kotlin-android-fundamentals/overview) | Android Kotlin Fundamentals is a free online course provided by Google. It teaches you how to build Android apps using the Kotlin programming language. The course covers key concepts and best practices. | +| [Android Developer Training](https://developer.android.com/courses) | The Android Developer Training website offers a variety of courses and tutorials to help you learn Android app development. It includes practical exercises and downloadable materials. | +| [Codelabs for Android Developers](https://codelabs.developers.google.com/android-training/) | Google's Codelabs for Android Developers provide hands-on coding experiences to help you learn Android app development. The codelabs cover various topics and skill levels. | +| [Android Developers YouTube Channel](https://www.youtube.com/user/androiddevelopers) | The official Android Developers YouTube channel features a wide range of video tutorials, developer talks, and technical presentations related to Android development. It's a valuable resource for visual learners. | +| [Android Weekly Newsletter](https://androidweekly.net/) | The Android Weekly newsletter delivers the latest Android news, articles, and tutorials to your inbox. It's a convenient way to stay updated on Android development trends. | +| [Google Developers Training](https://developers.google.com/training/) | Google Developers Training offers online courses and resources on various topics, including Android app development. It's a valuable source of learning materials provided by Google. | +| [Ray Wenderlich's Android Tutorials](https://www.raywenderlich.com/android) | Ray Wenderlich's website offers a collection of Android tutorials and guides. It covers various topics, including Kotlin, Android Studio, and app development best practices. | + +## Open Source Library Collection + +| Collection Link | Description | +| --------------------------------------------------------- | ------------------------------------------------ | +| [Android Libraries and Resources](https://github.com/jpardogo/List_Of_Android_Libraries) | This GitHub repository maintains a list of Android libraries and resources that can be helpful for Android app development. It includes libraries for UI, networking, database, testing, and more. | +| [Awesome Android UI](https://github.com/wasabeef/awesome-android-ui) | Awesome Android UI is a collection of Android UI/UX libraries, components, and resources. It's a valuable resource for designers and developers looking to create beautiful Android user interfaces. | +| [Awesome Android Performance](https://github.com/Juude/Awesome-Android-Performance) | Awesome Android Performance is a curated list of resources to help you optimize the performance of your Android apps. It includes articles, tools, and best practices for achieving better performance. | +| [Awesome Android Libraries](https://github.com/aritraroy/UltimateAndroidReference) | Awesome Android Libraries is a comprehensive list of Android libraries, including networking, database, image loading, and more. It provides a quick reference to find libraries for common app development tasks. | +| [Android Arsenal](https://android-arsenal.com/) | Android Arsenal is a website that curates and showcases Android libraries, tools, and projects. It's a convenient resource for discovering useful Android development resources. | +| [Awesome Kotlin](https://github.com/KotlinBy/awesome-kotlin) | Awesome Kotlin is a collection of Kotlin-related resources, including + + libraries, frameworks, tools, and articles. Kotlin is increasingly popular for Android app development, and this list can help you explore the language's ecosystem. | + +## Books + +| Book Title (with Amazon Link) | Author(s) | Description | +| ------------------------------------------------------- | ---------------------------------------------- | ------------------------------------------------ | +| [Kotlin Programming: The Big Nerd Ranch Guide](https://www.amazon.com/Kotlin-Programming-Nerd-Ranch-Guide/dp/0135161630) | Josh Skeen, David Greenhalgh | This book is a comprehensive guide to Kotlin programming, which is increasingly popular for Android development. It covers fundamental Kotlin concepts and how to use them in Android app development. | +| [Effective Java](https://www.amazon.com/Effective-Java-Joshua-Bloch-ebook/dp/B078H61SCH) | Joshua Bloch | While not specific to Android, this classic book covers essential Java practices and patterns. Android app developers who use Java can benefit from the principles outlined in this book. | +| [Android Programming: The Big Nerd Ranch Guide](https://www.amazon.com/Android-Programming-Nerd-Ranch-Guide/dp/0135245125) | Bill Phillips, Chris Stewart, Kristin Marsicano | This book is designed for beginners in Android development. It offers a hands-on approach to learning Android app development through practical examples and exercises. | +| [Head First Android Development](https://www.amazon.com/Head-First-Android-Development-Brain-Friendly/dp/149202962X) | Dawn Griffiths, David Griffiths | This book provides a beginner-friendly introduction to Android app development using Java. It uses a visual and interactive approach to teaching the concepts and practices of Android development. | +| [Android Studio 4.0 Development Essentials - Java Edition](https://www.amazon.com/Android-Studio-Development-Essentials-Androidx-ebook/dp/B08CGY1N7V) | Neil Smyth | This book is an up-to-date guide for Android development using Android Studio 4.0. It covers Android app development with Java and includes practical examples and tutorials. | +| [Android App Development & Design](https://www.amazon.com/Android-Development-Design-Sean-McQuillan-ebook/dp/B074S6DRD4) | Sean McQuillan | This book covers Android app development, design, and user experience (UX) principles. It's suitable for those interested in creating visually appealing and user-friendly Android apps. | +| [Mastering Android Development with Kotlin](https://www.amazon.com/Mastering-Android-Development-Kotlin-programming-ebook/dp/B07KM4V5JL) | Milos Vasic | Geared toward Kotlin enthusiasts, this book explores advanced Android development topics using Kotlin. It covers app architecture, reactive programming, and more. | +| [Android Design Patterns and Best Practices](https://www.amazon.com/Android-Design-Patterns-Best-Practice-ebook/dp/B074X5TPHX) | Ivan Porto Carrero | This book delves into Android design patterns and best practices. It's a valuable resource for developers looking to create well-structured and maintainable Android apps. | +| [Kotlin for Android App Development](https://www.amazon.com/Kotlin-Android-App-Development-Kotlin/dp/1787123685) | Peter Sommerhoff | Focused on Kotlin, this book provides insights into Android app development using the language. It covers Kotlin features, Android architecture components, and more. | +| [Clean Code: A Handbook of Agile Software Craftsmanship](https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship-ebook/dp/B001GSTOAM) | Robert C. Martin | Clean Code is a classic book that emphasizes writing clean, maintainable, and readable code. While not Android-specific, its principles are highly relevant for Android app development. | + +## YouTube Channels + +| YouTube Channel Link | Description | +| --------------------------------------------------------------- | ------------------------------------------------ | +| [The Net Ninja](https://www.youtube.com/channel/UCW5YeuERMmlnqo4oq8vwUpg) | The Net Ninja offers a wide range of video tutorials on web and mobile development topics, including Android app development with Kotlin. The channel features clear and concise explanations. | +| [CodeWithChris](https://www.youtube.com/user/CodeWithChris) | CodeWithChris provides beginner-friendly tutorials on app development for various platforms, including iOS and Android. The channel covers both Swift and Kotlin for mobile app development. | +| [Traversy Media](https://www.youtube.com/user/TechGuyWeb) | Traversy Media offers tutorials on web and mobile development. While the channel primarily focuses on web development, it includes Android-related tutorials for those interested in both areas. | +| [Coding in Flow](https://www.youtube.com/c/CodinginFlow) | Coding in Flow is known for its Android development tutorials. The channel covers a wide range of topics, including Android Jetpack components, Kotlin, and UI design. | +| [Academind](https://www.youtube.com/c/Academind) | Academind provides in-depth tutorials and courses on web and mobile development. The channel covers Android app development with Kotlin and covers more advanced topics. | +| [The Coding Train](https://www.youtube.com/c/TheCodingTrain) | The Coding Train, hosted by Daniel Shiffman, explores creative coding and interactive applications. While not exclusively focused on Android, it offers valuable programming concepts and inspiration. | +| [Babbar Code](https://www.youtube.com/channel/UCX8gKciOxPDlldyCaCF7fMg) | Babbar Code offers tutorials on Android development, including topics like Kotlin, Android Jetpack, and Firebase integration. The channel provides hands-on examples. | +| [Telusko](https://www.youtube.com/user/javaboynavin) | Telusko offers tutorials on various programming languages and technologies, including Java and Kotlin for Android development. The channel covers Android app development concepts and libraries. | +| [Mitch Tabian](https://www.youtube.com/user/mitchtabian) | Mitch Tabian's channel focuses on Android app development tutorials using Kotlin. It includes tutorials on Android architecture components and modern Android app practices. | +| [CodeCourse](https://www.youtube.com/channel/UCpOIUW62tnJTtpWFABxWZ8g) | CodeCourse offers web and mobile development tutorials. While primarily focused on web development, it includes some Android app development content. | + +## Podcasts + +| Podcast Link | Description | +| -------------------------------------------------------- | ------------------------------------------------ | +| [Android Developers Backstage](https://androidbackstage.blogspot.com/) | Android Developers Backstage is a podcast hosted by Android engineers from Google. It provides insights into Android development, design, and best practices. | +| [Fragmented Podcast](http://fragmentedpodcast.com/) | The Fragmented Podcast focuses on Android app development and related topics. It features discussions, interviews, and tips for Android developers. | +| [Android Developers](https://developer.android.com/android-developers/podcast) | The official Android Developers podcast features episodes on Android app development, platform updates, and developer stories. It provides valuable insights into Android development from Google experts. | +| [ + +The Boring Developer](https://theboringdeveloper.com/) | The Boring Developer podcast covers software development topics, including Android development, software architecture, and best practices. It offers a well-rounded perspective on the industry. | +| [Android Dialogs](https://www.youtube.com/channel/UCMEmNnHT69aZuaOrE-dF6ug) | Android Dialogs features video interviews with Android developers. While primarily a video series, it's a valuable resource for hearing from experienced Android developers. | + +## Forums and Communities + +| Forum/Community Link | Description | +| ---------------------------------------------------------- | ------------------------------------------------ | +| [Stack Overflow - Android](https://stackoverflow.com/questions/tagged/android) | Stack Overflow is a popular Q&A platform where developers can ask and answer questions related to Android development. It's a valuable resource for troubleshooting issues and finding solutions. | +| [GitHub Android Topic](https://github.com/topics/android) | GitHub's Android topic is a collection of Android-related repositories, libraries, and projects. You can discover and explore a wide range of Android development resources here. | +| [Reddit /r/androiddev](https://www.reddit.com/r/androiddev/) | Reddit's /r/androiddev community is a forum for Android developers to discuss topics, share knowledge, and seek advice. It's a great place to engage with other developers and stay updated on industry news. | +| [Android Developers Community](https://developer.android.com/community) | The official Android Developers Community is hosted by Google. It offers forums for discussing Android app development, sharing knowledge, and seeking help from the community. | +| [XDA Developers Forum](https://forum.xda-developers.com/android) | XDA Developers is a popular forum for Android enthusiasts and developers. It covers a wide range of topics, including Android development, customization, and modding. | + +## Blogs + +| Blog Link | Description | +| -------------------------------------------------------- | ------------------------------------------------ | +| [Android Developers Blog](http://android-developers.blogspot.com/) | The official Android Developers Blog is the place to stay updated on the latest Android developments and authoritative information. It features announcements, best practices, and updates from Google. | +| [Android Authority](https://www.androidauthority.com/) | Android Authority is a website that provides news, reviews, and tutorials related to Android devices and software. It covers a wide range of Android-related topics, making it a valuable resource for developers. | +| [Medium - Android Developers](https://medium.com/androiddevelopers) | The Android Developers publication on Medium features articles and tutorials on Android development topics. It includes contributions from various Android experts. | +| [Vogella Blog](http://www.vogella.com/tutorials/android.html) | Vogella Blog offers a collection of Android tutorials and articles on Android app development, Kotlin, and Android Studio. It provides practical guidance and examples. | +| [Android Weekly Blog](https://androidweekly.net/) | The Android Weekly blog accompanies the Android Weekly newsletter and features articles and tutorials on Android development topics. It's a convenient way to access curated content. | +| [MindOrks Blog](https://blog.mindorks.com/) | MindOrks Blog offers tutorials and articles on Android app development, Kotlin, and Android architecture components. It provides resources for both beginners and experienced developers. | +| [Styling Android Blog](https://blog.stylingandroid.com/) | Styling Android Blog, by Mark Allison, focuses on Android UI and UX design. It includes tutorials and insights into creating visually appealing Android apps. | +| [Ray Wenderlich's Android Tutorials](https://www.raywenderlich.com/android) | Ray Wenderlich's website offers a collection of Android tutorials and guides. It covers various topics, including Kotlin, Android Studio, and app development best practices. | + +## Sample Projects and GitHub Repositories + +| Repository Link | Description | +| -------------------------------------------------------- | ------------------------------------------------ | +| [Android Architecture Blueprints](https://github.com/android/architecture-samples) | Android Architecture Blueprints is a project that provides a collection of samples to showcase various architectural approaches for Android app development. It's a valuable resource for learning best practices in Android architecture. | +| [Google Samples](https://github.com/googlesamples) | Google Samples is a GitHub organization that hosts a variety of sample projects related to Android development. These samples cover a wide range of topics and serve as educational resources. | +| [Android Open Source Project (AOSP)](https://source.android.com/) | The Android Open Source Project (AOSP) is the official source code repository for the Android platform. Exploring the AOSP source code can provide deep insights into how Android works internally. | +| [Android Weekly](https://androidweekly.net/issues/issue-189) | Android Weekly periodically features open-source Android projects in its newsletter. You can discover interesting projects and learn from their source code. | +| [Awesome Android](https://github.com/JStumpp/awesome-android) | Awesome Android is a curated list of Android libraries, tools, and resources. It includes open-source projects that can help you learn Android development. | +| [Google I/O Android App](https://github.com/google/iosched) | The Google I/O Android app is open source and serves as an example of a well-designed Android app. You can explore its source code to learn about modern Android app development practices. | +| [Plaid](https://github.com/android/plaid) | Plaid is an open-source showcase app for material design in Android. It demonstrates best practices in UI/UX design and Android development. | +| [Tivi](https://github.com/chrisbanes/tivi) | Tivi is an open-source TV show tracking app for Android. It showcases modern Android app architecture using Kotlin, Jetpack Compose, and other libraries. | + +## Android Developer Magazines + +| Magazine Link | Description | +| ---------------------------------------------------------- | ------------------------------------------------ | +| [Android Dev Summit](https://developer.android.com/dev-summit) | The Android Dev Summit is an annual event hosted by Google. It features talks, sessions, and announcements related to Android development. You can watch videos from past summits to learn about the latest Android technologies and best practices. | +| [Android Weekly](https://androidweekly.net/) | Android Weekly is a newsletter that delivers the latest Android news, articles, and tutorials to your inbox. It's a convenient way to stay updated on Android development trends. | +| [Android Authority](https://www.androidauthority.com/) | Android Authority is a website that provides news, reviews, and tutorials related to Android devices and software. It covers a wide range of Android-related topics, making it a valuable resource for developers. | +| [Android Developers Blog](http://android-developers.blogspot.com/) | The official Android Developers Blog is the place to stay updated on the latest Android developments and authoritative information (requires a VPN for access). | +| [XDA Developers](https://www.xda-developers.com/) | XDA Developers is a community-driven website focused on Android development, customization, and modding. It includes forums, articles, and resources for Android enthusiasts and developers. | + +## Awesome Series + +| Awesome List Link | Description | +| ------------------------------------------------------------ | ------------------------------------------------ | +| [Awesome Android](https://github.com/JStumpp/awesome-android) | Awesome Android is a curated list of Android libraries, tools, and resources. It includes open-source projects that can help you learn Android development. | +| + + [Awesome Android UI](https://github.com/wasabeef/awesome-android-ui) | Awesome Android UI is a collection of Android UI/UX libraries, components, and resources. It's a valuable resource for designers and developers looking to create beautiful Android user interfaces. | +| [Awesome Kotlin](https://github.com/KotlinBy/awesome-kotlin) | Awesome Kotlin is a collection of Kotlin-related resources, including libraries, frameworks, tools, and articles. Kotlin is increasingly popular for Android app development, and this list can help you explore the language's ecosystem. | + +These resources encompass a wide range of Android development topics, from programming languages and libraries to design principles and best practices. Whether you're a beginner or an experienced developer, you can find valuable information and tools to enhance your Android app development skills. Make sure to explore the specific areas that align with your goals and interests, and keep up to date with the latest trends and updates in the Android development community. \ No newline at end of file