# Android-Blogs **Repository Path**: happiii/Android-Blogs ## Basic Information - **Project Name**: Android-Blogs - **Description**: Android开发相关的博客、文章、教程 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2020-09-11 - **Last Updated**: 2025-12-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Android-Blogs Android开发相关的博客、文章、教程 ## 官方Blog 名称 | Blog地址 | 说明 --- | --- | --- Android Developers Blog | [http://android-developers.blogspot.com/](http://android-developers.blogspot.com/) | 官方Blog Android Weekly | [http://androidweekly.net/](http://androidweekly.net/) | Android周刊,支持邮箱订阅,随时了解Android Dev最新前沿,每周一更新 Android Weekly 中文版 | [http://androidweekly.cn/](http://androidweekly.cn/) | Android中文周刊,暂时只支持RSS订阅,每周一更新 [Code Path](https://github.com/codepath/android_guides/wiki) | [https://github.com/codepath/android_guides/wiki](https://github.com/codepath/android_guides/wiki) | 教程通俗易懂 [Android开发技术前线](https://github.com/bboyfeiyu/android-tech-frontier) | [http://www.devtf.cn/](http://www.devtf.cn/) | 一个定期翻译、发布国内外Android优质的技术、开源库、软件架构设计、测试等文章的开源项目 [Styling Android](https://blog.stylingandroid.com/) | [https://blog.stylingandroid.com/](https://blog.stylingandroid.com/) | 专注Android Design实现 Big Nerd Ranch | [https://www.bignerdranch.com/blog/categories/android/](https://www.bignerdranch.com/blog/categories/android/) | 他们所写的培训教程非常有名 Square | [https://corner.squareup.com/](https://corner.squareup.com/) | 良心企业 FaceBook | [https://code.facebook.com/android/](https://code.facebook.com/android/) | 良心企业 Vogella | [http://blog.vogella.com/category/android/](http://blog.vogella.com/category/android/) | Android基础教程 codekk | [http://www.codekk.com/open-source-project-analysis](http://www.codekk.com/open-source-project-analysis) | Trinea发起的Android开源项目分析 Yalantis | [https://yalantis.com](https://yalantis.com) | 介绍很多酷炫动画的实现原理(Android + iOS) ## 国外开发者 名称 | Blog地址 | 说明 --- | --- | --- [Jake Wharton](https://github.com/JakeWharton) | [http://jakewharton.com/](http://jakewharton.com/) | Jake大神, 专心写框架,Blog比较少 [Chris Banes](https://github.com/chrisbanes) | [https://chris.banes.me/](https://chris.banes.me/) | [Android-PullToRefresh](https://github.com/chrisbanes/Android-PullToRefresh)等开源项目作者 [Daniel Lew](https://github.com/dlew) | [http://blog.danlew.net/](http://blog.danlew.net/) | 有干货,也有很多有趣的文章 The Cheese Factory | [http://inthecheesefactory.com/blog](http://inthecheesefactory.com/blog) | 2015年才开的博客,内容非常新 TechnoTalkative | [http://www.technotalkative.com/](http://www.technotalkative.com/) | the lazy android developers 系列作者 [Saúl Molinero](https://github.com/saulmm) | [http://saulmm.github.io/](http://saulmm.github.io/) | 个人非常喜欢的一个开发者博客 Cyril Mottier | [http://cyrilmottier.com/](http://cyrilmottier.com/) | Quora上很推崇的一个开发者,但是现在博客写的不勤了 Ravi Tamada | [http://www.androidhive.info/](http://www.androidhive.info/) | 博文非常基础,非常详细,适合初学者 [Alex Lockwood](https://github.com/alexjlockwood) |[http://www.androiddesignpatterns.com/](http://www.androiddesignpatterns.com/) | ## 国内开发者 名称 | Blog地址 | 说明 --- | --- | --- [Trinea](https://github.com/Trinea/) | [http://www.trinea.cn/category/android/](http://www.trinea.cn/category/android/) | Trinea大神 [liaohuqiu](https://github.com/liaohuqiu) | [http://www.liaohuqiu.net/cn/](http://www.liaohuqiu.net/cn/) | [android-Ultra-Pull-To-Refresh](https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh)作者 [代码家](https://github.com/daimajia) | [http://blog.daimajia.com/](http://blog.daimajia.com/) | AndroidSwipeLayout、AndroidViewAnimations、NumberProgressBar等开源库作者,撸库大神,不过好像不太喜欢写技术博客... [stormzhang](https://github.com/stormzhang) | [http://stormzhang.com/](http://stormzhang.com/) | 经常混迹知乎、GitHub 郭霖 | [郭霖的专栏](http://blog.csdn.net/guolin_blog) | CSDN 博客之星, 《第一行代码》作者 ## 性能优化 ### Developing for Android * [Developing for Android, I:Understanding the Mobile Context](https://medium.com/google-developers/developing-for-android-i-understanding-the-mobile-context-fd2351b131f8) * [Developing for Android, II:The Rules: Memory](https://medium.com/google-developers/developing-for-android-ii-bb9a51f8c8b9) * [Developing for Android, III:The Rules: Performance](https://medium.com/google-developers/developing-for-android-iii-2efc140167fd) * [Developing for Android, IV:The Rules: Networking](https://medium.com/google-developers/developing-for-android-iv-e7dc4ce0a59) * [Developing for Android V:The Rules: Language and Libraries](https://medium.com/google-developers/developing-for-android-v-f6b8038b42f5) * [Developing for Android VI:The Rules: Storage](https://medium.com/google-developers/developing-for-android-vi-c0b1539f0e98) * [Developing for Android VII:The Rules: Framework](https://medium.com/google-developers/developing-for-android-vii-the-rules-framework-concerns-d0210e52eee3) * [Developing for Android VIII:The Rules: User Interface](https://medium.com/google-developers/developing-for-android-viii-e91ced595fac) * [Developing for Android IX:Tools](https://medium.com/google-developers/developing-for-android-ix-tools-375134af1098) ### 胡凯(译者)-性能优化系列 * [Android性能优化典范](http://hukai.me/android-performance-patterns/) * [Android性能优化之渲染篇](http://hukai.me/android-performance-render/) * [Android性能优化之运算篇](http://hukai.me/android-performance-compute/) * [Android性能优化之内存篇](http://hukai.me/android-performance-memory/) * [Android性能优化之电量篇](http://hukai.me/android-performance-battery/) * [Android性能优化典范 - 第2季](http://hukai.me/android-performance-patterns-season-2/) ### 内存泄露 * [How to Leak a Context: Handlers & Inner Classes](http://www.androiddesignpatterns.com/2013/01/inner-class-handler-memory-leak.html) * [Activitys, Threads, & Memory Leaks](http://www.androiddesignpatterns.com/2013/04/activitys-threads-memory-leaks.html) * [Android Performance Case Study](http://www.curious-creature.com/2012/12/01/android-performance-case-study/) * [Android Performance Case Study Follow-up](http://www.curious-creature.com/2015/03/25/android-performance-case-study-follow-up/) * [Avoiding memory leaks](http://android-developers.blogspot.jp/2009/01/avoiding-memory-leaks.html) ### 缓存 * [Displaying Bitmaps Efficiently](http://developer.android.com/training/displaying-bitmaps/index.html) *[[中文版--郭霖译](http://blog.csdn.net/guolin_blog/article/details/9316683)]* * [Android DiskLruCache完全解析,硬盘缓存的最佳方案](http://blog.csdn.net/guolin_blog/article/details/28863651) * [Android照片墙完整版,完美结合LruCache和DiskLruCache](http://blog.csdn.net/guolin_blog/article/details/34093441) * [Android应用性能优化之使用SparseArray替代HashMap](http://liuzhichao.com/p/832.html) ### 其他 * [Performance Tips](http://developer.android.com/training/articles/perf-tips.html) ## ListView/RecyclerView/GridView(Android开发重中之重) ### Cyril Mottier - ListView Tips & Tricks * [ListView Tips & Tricks #1: Handling Emptiness](http://cyrilmottier.com/2011/06/20/listview-tips-tricks-1-handle-emptiness/) * [ListView Tips & Tricks #2: Sectioning Your ListView](http://cyrilmottier.com/2011/07/05/listview-tips-tricks-2-section-your-listview/) * [ListView Tips & Tricks #3: Create Fancy ListViews](http://www.cyrilmottier.com/2011/08/08/listview-tips-tricks-3-create-fancy-listviews/) * [ListView Tips & Tricks #4: Add Several Clickable Areas](http://cyrilmottier.com/2011/11/23/listview-tips-tricks-4-add-several-clickable-areas/) * [ListView Tips & Tricks #5: Enlarged Touchable Areas](http://cyrilmottier.com/2012/02/16/listview-tips-tricks-5-enlarged-touchable-areas/) ### Bill Phillips - RecyclerView * [RecyclerView Part 1: Fundamentals For ListView Experts](https://www.bignerdranch.com/blog/recyclerview-part-1-fundamentals-for-listview-experts/) * [RecyclerView Part 2: Choice Modes](https://www.bignerdranch.com/blog/recyclerview-part-2-choice-modes/) ### Building a RecyclerView LayoutManager * [Building a RecyclerView LayoutManager – Part 1](http://wiresareobsolete.com/2014/09/building-a-recyclerview-layoutmanager-part-1/) * [Building a RecyclerView LayoutManager – Part 2](http://wiresareobsolete.com/2014/09/recyclerview-layoutmanager-2/) * [Building a RecyclerView LayoutManager – Part 3](http://wiresareobsolete.com/2015/02/recyclerview-layoutmanager-3/) ### Drag and Swipe * [Drag and Swipe with RecyclerView](https://medium.com/@ipaulpro/drag-and-swipe-with-recyclerview-b9456d2b1aaf) ### Adapter * [Using an ArrayAdapter with ListView](https://github.com/codepath/android_guides/wiki/Using-an-ArrayAdapter-with-ListView) ### 下拉刷新 * [我眼中的下拉刷新](http://www.liaohuqiu.net/cn/posts/the-pull-to-refresh-in-my-eyes/) ### 上拉加载更多 * [加载更多](http://cube-sdk.liaohuqiu.net/cn/load-more/) * [Endless Scrolling with AdapterViews](https://github.com/codepath/android_guides/wiki/Endless-Scrolling-with-AdapterViews) ### Scrolling * [Scrolling RecyclerView – Part 1](https://blog.stylingandroid.com/scrolling-recyclerview-part-1/) * [Scrolling RecyclerView – Part 2](https://blog.stylingandroid.com/scrolling-recycler-view-part-2/) * [RecyclerView FastScroll – Part 1](https://blog.stylingandroid.com/recyclerview-fastscroll-part-1/) * [RecyclerView FastScroll – Part 2](https://blog.stylingandroid.com/recyclerview-fastscroll-part-2/) ### 其他 * [6 ways to make your lists scroll faster than the wind](http://leftshift.io/6-ways-to-make-your-lists-scroll-faster-than-the-wind) 提升ListView滚动速度 ## UI ### Design Support Library * [Exploring the new Android Design Support Library](https://medium.com/ribot-labs/exploring-the-new-android-design-support-library-b7cda56d2c32) * [More Material Design with Topeka for Android](http://android-developers.blogspot.co.uk/2015/06/more-material-design-with-topeka-for_16.html) * [Codelab for Android Design Support Library used in I/O Rewind Bangkok session](http://inthecheesefactory.com/blog/android-design-support-library-codelab/en) * [TIPS AND TRICKS FOR ANDROID MATERIAL SUPPORT LIBRARY](http://code.hootsuite.com/tips-and-tricks-for-android-material-support-library/) * [TIPS AND TRICKS FOR ANDROID MATERIAL SUPPORT LIBRARY 2: ELECTRIC BOOGALOO](http://code.hootsuite.com/tips-and-tricks-for-android-material-support-library-2-electric-boogaloo/) ### Beautiful UI Widget * [How We Developed the Guillotine Menu Animation for Android](http://yalantis.com/blog/how-we-developed-the-guillotine-menu-animation-for-android/?utm_source=github) * [一步一步教你实现Periscope点赞效果](http://www.jianshu.com/p/03fdcfd3ae9c) * [Card Library : Customization](https://github.com/gabrielemariotti/cardslib/blob/master/doc/CUSTOMIZATION.md) -- 自定义Card View * [*GraphView*](http://www.android-graphview.org/) -- open source graph plotting library for Android ### Custom View/ViewGroup * [Creating Custom Views -- Android官方Training](http://developer.android.com/training/custom-views/index.html) * [Defining Custom Views](https://github.com/codepath/android_guides/wiki/Defining-Custom-Views) * [Android LayoutInflater原理分析,带你一步步深入了解View(一)](http://blog.csdn.net/guolin_blog/article/details/12921889) * [Android视图绘制流程完全解析,带你一步步深入了解View(二)](http://blog.csdn.net/guolin_blog/article/details/16330267) * [Android视图状态及重绘流程分析,带你一步步深入了解View(三)](http://blog.csdn.net/guolin_blog/article/details/17045157) * [Android自定义View的实现方法,带你一步步深入了解View(四)](http://blog.csdn.net/guolin_blog/article/details/17357967) * [Creating custom Android views – Part 1: Extending standard views and adding new xml attributes](http://www.jayway.com/2012/06/25/creating-custom-android-views-part-1-extending-standard-views-and-adding-new-xml-attributes/) * [Creating custom Android views – Part 2: How padding works and how to draw your own content](http://www.jayway.com/2012/07/03/creating-custom-android-views-part-2-how-padding-works-and-how-to-draw-your-own-content/) * [Creating custom Android views – Part 3: Animating your custom views, smoothly](http://www.jayway.com/2012/08/29/creating-custom-android-views-part-3-animating-your-custom-views-smoothly/) * [Creating custom Android views – Part 4: Measuring and how to force a view to be square](http://www.jayway.com/2012/12/12/creating-custom-android-views-part-4-measuring-and-how-to-force-a-view-to-be-square/) * [Custom ViewGroups](https://sriramramani.wordpress.com/2015/05/06/custom-viewgroups/) * [Using Custom Compound Views in Android](http://ryanharter.com/blog/2014/05/14/using-custom-compound-views-in-android/) * [Custom Drawables](http://ryanharter.com/blog/2015/04/03/custom-drawables/) * [How We Developed the Guillotine Menu Animation for Android](https://yalantis.com/blog/how-we-developed-the-guillotine-menu-animation-for-android/) -- 如何实现铡刀菜单动画? * [Android Canvas drawText实现中文垂直居中](http://blog.csdn.net/hursing/article/details/18703599) ## ActionBar / ToolBar * [android:ToolBar详解(手把手教程)](http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1118/2006.html) * [How to hide/show Toolbar when list is scroling (part 1)](http://mzgreen.github.io/2015/02/15/How-to-hideshow-Toolbar-when-list-is-scroling%28part1%29/) * [How to hide/show Toolbar when list is scrolling (part 2)](http://mzgreen.github.io/2015/02/28/How-to-hideshow-Toolbar-when-list-is-scrolling%28part2%29/) * [How to hide/show Toolbar when list is scrolling (part 3)](https://mzgreen.github.io/2015/06/23/How-to-hideshow-Toolbar-when-list-is-scrolling%28part3%29/) ## Fragment * [Android Fragment完全解析,关于碎片你所需知道的一切](http://blog.csdn.net/guolin_blog/article/details/8881711) * [Probably be the best way (?) to save/restore Android Fragment’s state so far](http://inthecheesefactory.com/blog/best-approach-to-keep-android-fragment-state/en) *注:作者认为该方法存在很多问题,建议阅读下篇博文* * [The Real Best Practices to Save/Restore Activity's and Fragment's state. (StatedFragment is now deprecated)](http://inthecheesefactory.com/blog/fragment-state-saving-best-practices/en) * [How to make onActivityResult get called on Nested Fragment](http://inthecheesefactory.com/blog/how-to-fix-nested-fragment-onactivityresult-issue/en) ## Services * [Services](http://developer.android.com/guide/components/services.html) * [Bound Services](http://developer.android.com/guide/components/bound-services.html) * [Android Interface Definition Language (AIDL)](http://developer.android.com/guide/components/aidl.html) * [Starting Background Services](https://github.com/codepath/android_guides/wiki/Starting-Background-Services) ## Context Provider * [Android Tutorial: Content Provider Basics](http://www.grokkingandroid.com/android-tutorial-content-provider-basics/) * [Android Tutorial: Using Content Providers](http://www.grokkingandroid.com/android-tutorial-using-content-providers/) * [Android Tutorial: Writing your own Content Provider](http://www.grokkingandroid.com/android-tutorial-writing-your-own-content-provider/) ## Notification * [Notifications](https://guides.codepath.com/android/Notifications) ## Gradle * [Gradle tip #1: tasks](http://trickyandroid.com/gradle-tip-1-tasks/) * [Gradle tip #2: understanding syntax](http://trickyandroid.com/gradle-tip-2-understanding-syntax/) * [Android Studio系列教程四--Gradle基础](http://stormzhang.com/devtools/2014/12/18/android-studio-tutorial4/) * [Android Studio系列教程五--Gradle命令详解与导入第三方包](http://stormzhang.com/devtools/2015/01/05/android-studio-tutorial5/) * [Android Studio系列教程六--Gradle多渠道打包](http://stormzhang.com/devtools/2015/01/15/android-studio-tutorial6/) ## Hacky (小技巧) * [使用android.view.TouchDelegate扩大View的触摸点击区域](http://blog.csdn.net/tongcpp/article/details/23450975) * [Android EditText的使用及值得注意的地方](http://www.jianshu.com/p/1f05bb1fde3e) * *Android Tips Round-Up* [[PART 1](http://blog.danlew.net/2014/03/30/android-tips-round-up-part-1/)] [[PART 2](http://blog.danlew.net/2014/04/14/android-tips-round-up-part-2/)] [[PART 3](http://blog.danlew.net/2014/04/28/android-tips-round-up-part-3/)] [[PART 4](http://blog.danlew.net/2014/05/12/android-tips-round-up-part-4/)] [[PART 5](http://blog.danlew.net/2014/05/28/android-tips-round-up-part-5/)] * [Why You Should Use a GIT SHA in Your Crash Reporting](http://www.donnfelker.com/why-you-should-use-a-git-sha-in-your-crash-reporting/) * *Supporting multiple themes in your Android app* [[(Part 1)](http://www.hidroh.com/2015/02/16/support-multiple-themes-android-app/)] [[(Part 2)](http://www.hidroh.com/2015/02/25/support-multiple-themes-android-app-part-2/)] * [A useful stack on android #1, architecture](http://saulmm.github.io/2015/02/02/A%20useful%20stack%20on%20android%20%231,%20architecture/) * [A useful stack on android #2, user interface](http://saulmm.github.io/a-useful-stack-on-android-2-user-interface/) * [A useful stack on android #3, compatibility](http://saulmm.github.io/a-useful-stack-on-android-3-compatibility/) * [Going multiprocess on Android](https://medium.com/@rotxed/going-multiprocess-on-android-52975ed8863c) * [Fast Rendering News Feed on Android](https://code.facebook.com/posts/879498888759525/fast-rendering-news-feed-on-android/?pnref=story) ## 开发框架 ### [Retrofit](https://github.com/square/retrofit) * [Retrofit官方文档](http://square.github.io/retrofit/) * [Retrofit开发指南](https://github.com/bboyfeiyu/android-tech-frontier/tree/master/issue-7/Retrofit%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97) 中文翻译 * [Retrofit Android Tutorial](http://themakeinfo.com/2015/04/retrofit-android-tutorial/) 英文原版 * [Retrofit by Square](http://kdubblabs.com/java/retrofit-by-square/) * [A smart way to use Retrofit](http://blog.robinchutaux.com/blog/a-smart-way-to-use-retrofit/) * [Implementing an Android REST Client using Retrofit](http://inaka.net/blog/2014/10/10/android-retrofit-rest-client/) * [Retrofit — Getting Started and Create an Android Client](https://futurestud.io/blog/retrofit-getting-started-and-android-client/) * [How To Use Retrofit Library In Your Android App](http://simpledeveloper.com/how-to-use-retrofit-library-in-android/) * [Retrofit – Using Jackson JSON Conversion](http://kdubblabs.com/java/retrofit-by-square/retrofit-using-jackson-json-conversion/) 使用Jackson解析 ### [Picasso](https://github.com/square/picasso) * [Picasso官方文档](http://square.github.io/picasso/) * [Solving the Android image loading problem: Volley vs. Picasso](https://www.bignerdranch.com/blog/solving-the-android-image-loading-problem-volley-vs-picasso/) ### [Fresco](https://github.com/facebook/fresco) * [Fresco官方文档](http://fresco-cn.org/) ### [Glide](https://github.com/bumptech/glide) * [Introduction to Glide, Image Loader Library for Android, recommended by Google](http://inthecheesefactory.com/blog/get-to-know-glide-recommended-by-google/en) ### [EventBus](https://github.com/greenrobot/EventBus) * [Quick Tip: How to Use the EventBus Library](http://code.tutsplus.com/tutorials/quick-tip-how-to-use-the-eventbus-library--cms-22694) * [Why you should avoid using an event bus](http://endlesswhileloop.com/blog/2015/06/11/stop-using-event-buses/) ### [ButterKnife](https://github.com/JakeWharton/butterknife) * [ButterKnife官方文档](http://jakewharton.github.io/butterknife/) * [ButterKnife--View注入框架](http://stormzhang.com/openandroid/android/2014/01/12/android-butterknife/) * [5 Reasons You Should Use Butterknife For Android ](http://www.thekeyconsultant.com/2013/09/5-reasons-you-should-use-butterknife.html) ### [LeakCanary](https://github.com/square/leakcanary) * [LeakCanary 中文使用说明](http://www.liaohuqiu.net/cn/posts/leak-canary-read-me/) * [LeakCanary: 让内存泄露无所遁形](http://www.liaohuqiu.net/cn/posts/leak-canary/) ### [Realm](https://realm.io/) * [Realm Java 0.80.3](https://realm.io/docs/java/latest/) -- Realm英文文档(Java) * [Realm中文文档](http://randy.party/2014/10/17/realm-doc-in-chinese.html) ### [RxJava](https://github.com/ReactiveX/RxJava) * [The introduction to Reactive Programming you've been missing](https://gist.github.com/staltz/868e7e9bc2a7b8c1f754) -- 什么是响应式编程(Reactive Programming) * [What is Functional Reactive Programming?](https://www.bignerdranch.com/blog/what-is-functional-reactive-programming/) * [Top 7 Tips for RxJava on Android](http://futurice.com/blog/top-7-tips-for-rxjava-on-android) * [ReactiveX Tutorial](http://reactivex.io/tutorials.html) * [When Iron Man becomes reactive, RxJava](http://saulmm.github.io/when-Iron-Man-becomes-Reactive-Avengers2/) * **Introduction to RxJava for Android** * [INTRODUCTION TO RXJAVA FOR ANDROID: THE TALK](http://www.philosophicalhacker.com/2015/06/16/introduction-to-rxjava-for-android-the-talk/) * [INTRODUCTION TO RXJAVA FOR ANDROID (PT. 2)](http://www.philosophicalhacker.com/2015/06/19/introduction-to-rxjava-for-android-pt-2/) * **Grokking RxJava** * [Grokking RxJava, Part 1: The Basics](http://blog.danlew.net/2014/09/15/grokking-rxjava-part-1/) * [Grokking RxJava, Part 2: Operator, Operator](http://blog.danlew.net/2014/09/22/grokking-rxjava-part-2/) * [Grokking RxJava, Part 3: Reactive with Benefits](http://blog.danlew.net/2014/09/30/grokking-rxjava-part-3/) * [Grokking RxJava, Part 4: Reactive Android](http://blog.danlew.net/2014/10/08/grokking-rxjava-part-4/) * [Loading data from multiple sources with RxJava](http://blog.danlew.net/2015/06/22/loading-data-from-multiple-sources-with-rxjava/) * [Don't break the chain: use RxJava's compose() operator](http://blog.danlew.net/2015/03/02/dont-break-the-chain/) * [Replace AsyncTask and AsyncTaskLoader with rx.Observable – RxJava Android Patterns](http://stablekernel.com/blog/replace-asynctask-asynctaskloader-rx-observable-rxjava-android-patterns/) * [RxJava Observable tranformation: concatMap() vs flatMap()](http://fernandocejas.com/2015/01/11/rxjava-observable-tranformation-concatmap-vs-flatmap/) * [Learning RxJava (for Android) by example](https://www.youtube.com/watch?v=k3D0cWyNno4&feature=youtu.be) -- YouTube视频教程 ### [Dagger](https://github.com/square/dagger) * [Dagger 源码解析](https://github.com/android-cn/android-open-project-analysis/tree/master/dagger) ## 测试 * [Robolectric Installation for Unit Testing](https://github.com/codepath/android_guides/wiki/Robolectric-Installation-for-Unit-Testing) * [用Robolectric来做Android unit testing](http://segmentfault.com/a/1190000002904944) * [Everybody Tests: Boom! Screenshot! ](http://www.everybodytests.com/2015/06/boom-screenshot-level-up-your-test.html) * [All in Together: Android Studio, Gradle and Robolectric](https://www.bignerdranch.com/blog/all-in-together-android-studio-gradle-and-robolectric/) * [Triumph! Android Studio 1.2 Sneaks In Full Testing Support](https://www.bignerdranch.com/blog/triumph-android-studio-1-2-sneaks-in-full-testing-support/) * [Parameterized testing with Robolectric](http://www.jayway.com/2015/03/19/parameterized-testing-with-robolectric/) * [Android Tools Project Site -- Unit testing support](https://sites.google.com/a/android.com/tools/tech-docs/unit-testing-support) * [Reliable API testing for Android with Retrofit and Mockito](http://www.mdswanson.com/blog/2013/12/16/reliable-android-http-testing-with-retrofit-and-mockito.html) ## Thread/Process * [A journey on the Android Main Thread - PSVM](https://corner.squareup.com/2013/10/android-main-thread-1.html) * [A journey on the Android Main Thread - Lifecycle bits](https://corner.squareup.com/2013/12/android-main-thread-2.html) ## 其他 * [THINGS YOU MAY NOT KNOW: TOOLS ATTRIBUTES](http://www.randomlytyping.com/blog/2015/6/17/things-you-may-not-know-about-tools-attributes) -- XML: `tools`属性 * [Tools Attributes](http://tools.android.com/tech-docs/tools-attributes) * [Tools of the trade — Part 1](https://medium.com/sebs-top-tips/tools-of-the-trade-part-1-f3c1c73de898) * [Tools of the trade — Part 2](https://medium.com/sebs-top-tips/tools-of-the-trade-part-2-b91271892d10) * [Designtime Layout Attributes](http://tools.android.com/tips/layout-designtime-attributes) * [ANNOTATION PROCESSING 101](http://hannesdorfmann.com/annotation-processing/annotationprocessing101/) -- Annotation 注解 * [A Look At Android Support Annotations](http://anupcowkur.com/posts/a-look-at-android-support-annotations/) * [Parcelable vs Serializable](http://www.developerphil.com/parcelable-vs-serializable/) * [How to debug HTTP(S) traffic on Android](https://medium.com/@rotxed/how-to-debug-http-s-traffic-on-android-7fbe5d2a34) * [Android: Requesting root access in your app](http://www.stealthcopter.com/blog/2010/01/android-requesting-root-access-in-your-app/) ## MVP * [MVP for Android: how to organize the presentation layer](http://antonioleiva.com/mvp-android/) * [TED MOSBY - SOFTWARE ARCHITECT](http://hannesdorfmann.com/android/mosby/) * [STINSON'S PLAYBOOK FOR MOSBY](http://hannesdorfmann.com/android/mosby-playbook/) * [Introduction to Model-View-Presenter on Android](http://konmik.github.io/introduction-to-model-view-presenter-on-android.html) * [一种在android中实现MVP模式的新思路](https://github.com/bboyfeiyu/android-tech-frontier/tree/master/androidweekly/%E4%B8%80%E7%A7%8D%E5%9C%A8android%E4%B8%AD%E5%AE%9E%E7%8E%B0MVP%E6%A8%A1%E5%BC%8F%E7%9A%84%E6%96%B0%E6%80%9D%E8%B7%AF) **[[英文原版](http://blog.cainwong.com/android-mvp-an-alternate-approach/)]** * [Architecting Android…The clean way?](http://fernandocejas.com/2014/09/03/architecting-android-the-clean-way/) * [MVPR: A FLEXIBLE, TESTABLE ARCHITECTURE FOR ANDROID (PT. 1)](http://www.philosophicalhacker.com/2015/07/07/mvpr-a-flexible-testable-architecture-for-android-pt-1/) ## Android Studio/开发工具/AS插件 * [推荐几个非常有用的工具](http://stormzhang.com/android/2015/05/26/android-tools/) * [搜索最好的 Android 代码——Android开发工具之Codota](http://www.imooc.com/article/1086) * [Android Studio Live Templates](https://www.bignerdranch.com/blog/android-studio-live-templates/) * [Level-up with Android Studio Shortcuts and Live Templates](http://stablekernel.com/blog/level-up-with-android-studio-shortcuts-and-live-templates/) -- AS快捷键 * [How to distribute your own Android library through jCenter and Maven Central from Android Studio](http://inthecheesefactory.com/blog/how-to-upload-library-to-jcenter-maven-central-as-dependency/en) *[[中文版](http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0623/3097.html)]* -- 如何使用Android Studio把自己的Android library分享到jCenter和Maven Central * [IDEA Colors & Fonts](http://www.ideacolorthemes.org/) -- 丰富的AS主题 * [Android Studio Tips & Tricks: Moving Around](http://www.developerphil.com/android-studio-tips-tricks-moving-around/) -- 掌握这些操作能节省很多时间 * Android Studio Tips Of the Day * [Android Studio Tips Of the Day - Roundup #1](http://www.developerphil.com/android-studio-tips-of-the-day-roundup-1/) * [Android Studio Tips Of the Day - Roundup #2](http://www.developerphil.com/android-studio-tips-of-the-day-roundup-2/) * [Android Studio Tips Of the Day - Roundup #3](http://www.developerphil.com/android-studio-tips-of-the-day-roundup-3/) * [Android Studio Tips Of the Day - Roundup #4](http://www.developerphil.com/android-studio-tips-of-the-day-roundup-4/) * [Android Studio Tips Of the Day - Roundup #5](http://www.developerphil.com/android-studio-tips-of-the-day-roundup-5/) * [Android Studio Tips Of the Day - Roundup #6](http://www.developerphil.com/android-studio-tips-of-the-day-roundup-6/) * [The Top 8 Plugins for Android Studio](http://www.sitepoint.com/top-8-plugins-android-studio/) ## 经验总结 * [Android学习之路--stormzhang](http://stormzhang.com/android/2014/07/07/learn-android-from-rookie/) * [Top 10 Most Common Android Development Mistakes: A Programming Tutorial](http://www.toptal.com/android/top-10-most-common-android-development-mistakes) * [Android开源库 -- 代码家](http://blog.daimajia.com/android-library-collection/) * [How to improve quality and syntax of your Android code](http://vincentbrison.com/2014/07/19/how-to-improve-quality-and-syntax-of-your-android-code/) * *Be a lazy but a productive android developer* * [RoboGuice](http://www.technotalkative.com/lazy-productive-android-developer-1/) * [Genymotion](http://www.technotalkative.com/lazy-productive-android-developer-2/) * [JSON Parsing library](http://www.technotalkative.com/lazy-productive-android-developer-3/) * [Card UI ](http://www.technotalkative.com/lazy-productive-android-developer-4/) * [Image loading library](http://www.technotalkative.com/lazy-productive-android-developer-part-5-image-loading-library/) * [Staggered GridView](http://www.technotalkative.com/lazy-productive-android-developer-part-6-staggered-gridview/) * [Useful tools](http://www.technotalkative.com/lazy-android-part-7-useful-tools/) * [Wireframe/Mockup design tools](http://www.technotalkative.com/lazy-part-8-wireframemockup-tools/?utm_source=feedly&utm_reader=feedly&utm_medium=rss&utm_campaign=lazy-part-8-wireframemockup-tools) * [Reverse engineering android applications](http://www.technotalkative.com/part-9-reverse-engineering-android-applications/) * [The Hitchhiker’s guide to Android Testing](http://www.technotalkative.com/part-10-the-hitchhikers-guide-to-android-testing/) * [6 THINGS I WISH I KNEW BEFORE I WROTE MY FIRST ANDROID APP](http://www.philosophicalhacker.com/2015/07/09/6-things-i-wish-i-knew-before-i-wrote-my-first-android-app/) ## [StackOverflow](http://stackoverflow.com/questions/tagged/android) * [Difference between px, dp, dip and sp in Android?](http://stackoverflow.com/a/2025541/4470672) * [Close/hide the Android Soft Keyboard](http://stackoverflow.com/a/1109108/4470672) * [Saving Activity state in Android](http://stackoverflow.com/questions/151777/saving-activity-state-in-android) * [Get screen dimensions in pixels](http://stackoverflow.com/a/1016941/4470672) * [Android - basic gesture detection](http://stackoverflow.com/questions/937313/android-basic-gesture-detection) *[[Best Answer](http://stackoverflow.com/a/938657/4470672)]* * [setEmptyView on ListView not showing its view in a android app](http://stackoverflow.com/a/17807347) * [IPackageStatsObserver cannot be resolved to a type (Android)](http://stackoverflow.com/a/30278018) * [Calling startActivity() from outside of an Activity context](http://stackoverflow.com/a/3918838) * [Using DiskLruCache in android 4.0 does not provide for openCache method](http://stackoverflow.com/a/10235381/4470672)