This chapter is to sort out the commonly used framework, including the source address of the framework and some more detailed blog explanation, to help you find more convenient resources.
network
1.android-async-http:
A relatively old network framework project, although has rarely used, but can learn about the writing method inside.
Source code: Android-async-http
A:
- The official website
- Android-async-http in the Quick Android Development Web series
- Android – Async – HTTP framework library use basis
2.retrofit:
Retrofit is a very popular web request framework that has been open sourced by the Square open source organization and is now widely used.
Source address: Retrofit
A:
- The official explanation
- A detailed explanation of how to Retrofit
- Retrofit analysis – beautiful decoupling routines
- Retrofit 2.0: The biggest improvements ever
3.okhttp:
Okhttp is also an open source network encapsulation library from the Square open source organization, and Retrofit is a secondary encapsulation based on this library.
Source address: okhttp
A:
- The official explanation
- How can I use OkHttp more efficiently
- OkHttp: A new generation of HTTP clients on the Java platform
- OKHttp source code parsing
- Http/Https/SPDY protocol selection
4.Volley
Volley is an open source web request framework developed by Google.
Source address: Volley
A:
- Volley (Google IO 2013)
- Android Volley Full Analysis (Series)
ReactiveX
The Rx family of well-known responsive development, according to the language contains:
- Java: RxJava
- JavaScript: RxJS
- C#: Rx.NET
- C#(Unity): UniRx
- Scala: RxScala
- Clojure: RxClojure
- C++: RxCpp
- Lua: RxLua
- Ruby: Rx.rb
- Python: RxPY
- Groovy: RxGroovy
- JRuby: RxJRuby
- Kotlin: RxKotlin
- Swift: RxSwift
- PHP: RxPHP
RxNetty: RxNetty RxAndroid: RxAndroid RxCocoa: RxCocoa
Best practices for RxJava combined with Retrofit
Image loading and display
1.Android-Universal-Image-Loader:
Source code: Android-universal-image-loader
Universal image-loader is an open source framework for Android
Android open source framework Universal image-loader full analysis (2) — Image caching strategy in detail
Android open source framework Universal image-loader full analysis (three) — source code interpretation
2. The fresco “:
Source address: Fresco
Best explanation: Official documentation
3.glide:
Source code address: Glide
A: Glide is a dedicated image loading and caching library for smooth scrolling
Google recommended picture loading library Glide introduction
4.picasso:
Source address: Picasso
Best explanation: Official documentation
Picasso – Powerful Android image download cache
5.PhotoView
Source address: PhotoView
A: PhotoView source code analysis
Hot update
1.AndFix:–Alibaba
Source address: AndFix
Alibaba-andfix Bug hotfix framework principle and source code analysis
Android hot patch AndFix principle analysis
2.AndroidInstantRun:–google
Source code address: instant-run
A: In-depth understanding of Android InstantRun principle and source code analysis
Instant Run: How Does it Work? !
3.DroidFix:
Source address: DroidFix
A: Introduction to hot patch dynamic repair technology for Android App
4.HotFix:
Source address: HotFix
A: Implement HotFix for Android automation based on Nuwa
5.Nuwa
Source address: Nuwa
A: Android hot fix Nuwa principle and Gradle plugin source code analysis
Android Hot Update Nuwa implementation steps
6.Tinker
Source code address: Tinker
Best explanation: Official documentation
Android N hybrid compilation and hot patch impact analysis
Tinker source code study (a) : patch generation of DexDiff principle analysis
7.RocooFix:
Source address: RocooFix
8.AnoleFix:
Source address: AnoleFix
9. Robust: – Meituan
Best solution: Android hot update scheme Robust
annotations
1.dagger:
dagger
Best explanation: Official documentation
2.butterknife
Source address: Butterknife
Best explanation: Official documentation
3. Androidannotations:
AndroidAnnotations
Best explanation: Official documentation
4.Dagger2
Source address: Dagger2
5.roboguice
Source code address: Roboguice
The chart
1. WilliamChart:
Source code address: WilliamChart
Support for LineChartView, BarChartView and StackBarChartView, and support Android 2.2 and above.
2. XCL – Charts:
XCL-Charts
Function: XCL-Charts is based on the native Canvas to draw all kinds of Charts. During design, xCL-Charts tries to ensure development efficiency while providing users with enough customization capabilities. Therefore, it is easy to use and flexible to customize. Currently, 3D/ non-3D Bar Chart, 3D/ non-3D Pie Chart, Stacked Bar Chart, Area Chart, Line Chart and Spline are supported Chart, Dount Chart, Nightingale Chart, Dial Chart, Gauge Chart, Radar Chart, Circle Chart, etc. Other features include support for zooming in and out of charts, gesture movement, animated display effects, high-density columnar display, custom lines for chart boundaries, mixed display of multiple charts, and switching between different types of charts from the same data source.
3. HelloCharts for Android:
HelloCharts for Android
Function: support line chart, bar chart, pie chart, bubble chart, combination chart; Support preview, zoom in and out, scrolling, part of the chart support animation; Support Android 2.2 or above
4. MPAndroidChart:
Source address: MPAndroidChart
Features: powerful chart drawing tool, support line chart, area chart, scatter chart, time chart, bar chart, bar chart, pie chart, bubble chart, ring chart, range (high to low) bar chart, mesh chart, etc. Support map drag and zoom; Support Android 2.2 or above, support horizontal/vertical zooming, multi-finger zooming, show animation, highlight, save to SDcard, read chart from file
5. Achartengine:
Source code address: Achartengine
Functions: powerful chart drawing tool, support line chart, area chart, scatter chart, time chart, bar chart, bar chart, pie chart, bubble chart, ring chart, range (high to low) bar chart, dial chart/table, cube chart and various graphs combined
6. GraphView:
Source address: GraphView
Function: Graph and graph View, can be used on Android curve chart, bar chart, wave chart display
7. HoloGraphLibrary:
HoloGraphLibrary
Function: drawing status chart, bar chart, pie chart
8. EazeGraph:
Source address: EazeGraph
Features: Android chart library, support bar chart, layered bar chart, pie chart, linear chart
9. PieChartView:
PieChartView
Function: relatively simple and direct pie statistics report chart, easy to use, set the corresponding property parameters
Design patterns
Here said design mode is Google official public code example of MVP mode, we can learn as a reference:
Stable samples
-
todo-mvp – Basic Model-View-Presenter architecture.
-
todo-mvp-loaders – Based on todo-mvp, fetches data using Loaders.
-
todo-databinding – Based on todo-mvp, uses the Data Binding Library.
-
todo-mvp-clean – Based on todo-mvp, uses concepts from Clean Architecture.
-
todo-mvp-dagger – Based on todo-mvp, uses Dagger2 for Dependency Injection
-
todo-mvp-contentproviders – Based on todo-mvp-loaders, fetches data using Loaders and uses Content Providers
-
todo-mvp-rxjava – Based on todo-mvp, uses RxJava for concurrency and data layer abstraction.
Samples in progress
- dev-todo-mvp-tablet – Based on todo-mvp, adds a master/detail view for tablets.
External samples
External samples are variants that may not be in sync with the rest of the branches.
-
todo-mvp-fragmentless – Based on todo-mvp, uses Android views instead of Fragments.
-
todo-mvp-conductor – Based on todo-mvp, uses the Conductor framework to refactor to a single Activity architecture.
Event bus
-
EventBus
-
otto
The database
-
ORMLite
-
greendao
-
ormndroid
-
androrm
-
ActiveAndroid
-
Realm
-
Sugar
-
sqlbrite
Network analysis
-
gson
-
fastjson
-
jackson-databind
-
HtmlPaser2
-
jsoup
Animation
-
lottie-android
-
lottie-ios
-
lottie-react-native
Cross-platform mobile development tools
1.Weex
Source code address: Weex
Official documents:
2.React Native
React Native
React Native React Native
The Log frame
-
Logger
-
hugo
-
timber
Testing framework (Unit Testing)
-
Mockito
-
Robotium
-
robolectric
video
-
Bilibili/ijkplayer
-
vlc
-
vlc-android-sdk
-
FFmpeg
-
android-ffmpeg-java
-
ffmpeg-android
-
GSYVideoPlayer
More topics
- Bilibili/MagicaSakura
other
Libphonenumber is Google’s open source phonenumber verification library
note
Simultaneous release address: Moxiang blog
It was updated on February 13, 2017 and will continue to be updated.