2015 recommended Android framework: 2015Android framework

Source: Internet
Author: User

2015 recommended Android framework: 2015Android framework
1. GuavaGoogle's Java 1.6 class library set extension projects, including collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, etc. these high-quality APIs can make your JAVA code more elegant and concise.

Function module:
Article 1. Basic tools [Basic utilities]: makes Java easier to use ---------------------------------------------------------------------------------------
2. Collection [Collections]: Guava's extension to the JDK set, which is the most mature and known part of Guava ---------------------------------------------------------------------------------------
3. Cache [Caches]: Guava Cache: local Cache implementation. Multiple Cache expiration policies are supported ---------------------------------------------------------------------------------------
4. Function style [Functional idioms]: Guava's function style support can significantly simplify the code, but please use it with caution ---------------------------------------------------------------------------------------
5. Concurrency [Concurrency]: Powerful and simple abstraction, making it easier to compile correct concurrent code ---------------------------------------------------------------------------------------
6. string processing [Strings]: A very useful string tool, including segmentation, connection, padding, and other operations ---------------------------------------------------------------------------------------
7. Native type [Primitives]: extends native type operations not provided by JDK (such as int and char), including some types of unsigned form functions ---------------------------------------------------------------------------------------
8. Range [Ranges]: comparable APIs, including continuous and discrete APIs ---------------------------------------------------------------------------------------
9. I/O: simplifies operations on I/O, especially I/O streams and files ---------------------------------------------------------------------------------------
10. Hash: provides more complex Hash implementations than Object. hashCode (), and implements Bloom Filters ---------------------------------------------------------------------------------------
11. Event bus [EventBus]: component communication in publish-subscribe mode, but the component does not need to be explicitly registered to other components ---------------------------------------------------------------------------------------
12. mathematical operations [Math]: optimized and fully tested mathematical tool class ---------------------------------------------------------------------------------------
13. Reflection [Reflection]: Guava's Java Reflection mechanism tool class Runtime ---------------------------------------------------------------------------------------

Advantage: efficient and well-designed APIs make the code concise and simple.
Project address:
Https://code.google.com/p/guava-libraries/
Document introduction:
Https://code.google.com/p/guava-libraries/wiki/GuavaExplained
Ii. Volley
The network communication library provided by Google enables faster, simpler, and more robust network communication.
Function module:
1. asynchronous download of JSON and Images ---------------------------------------------------------------------------------------
2. scheduling sort )---------------------------------------------------------------------------------------
3. Priority of network requests ---------------------------------------------------------------------------------------
4. cache expires ---------------------------------------------------------------------------------------
5. Multi-Level cancel request ---------------------------------------------------------------------------------------
6. Interaction with Activity and lifecycle (canceling all network requests at the end of Activity)

Advantage: Volley is especially suitable for scenarios with small data volumes but frequent communication.
Project address:
Https://android.googlesource.com/platform/frameworks/volley
Github address:
Https://github.com/mcxiaoke/android-volley
Document address:
Http://commondatastorage.googleapis.com/io-2013/presentations/110%20-%20Volley-%20Easy,%20Fast%20Networking%20for%20Android.pdf
Iii. AndroidCommon
Contains a set of libraries commonly used for Android program development, including ImageCache, DropDownListView, DownloadManager, and silently installing APK.

Function module:
1. cache (image cache, prefetch cache, and network cache) Success )---------------------------------------------------------------------------------------
2. Public View (pull down and load more ListView at the bottom, load more ScrollView at the bottom, and slide one page of Gallery) Preview )---------------------------------------------------------------------------------------
3. common Android tools (Network, download, Android resource operation, shell, file, Json, random number, Collection, etc)

Advantage: a set of general tool classes for Android Projects
Github address:
Https://github.com/Trinea/AndroidCommon
Demo address:
Https://play.google.com/store/apps/details? Id = cn. trinea. android. demo
Document introduction:
Http://www.trinea.cn/android/android-common-lib/


Iv. xUtils
XUtils contains many practical android tools. Originally originated from the Afinal framework, xUtils has been heavily restructured to support large file uploads, more comprehensive http request protocol support (10 predicates), and more flexible ORM, more event annotations are supported and are not affected by obfuscation.
Function module:
1. DbUtils: The orm framework in android. You can add, delete, modify, and query data with a line of code. Tip 2. ViewUtils: ioc framework in android. You can bind the UI, resources, and events in full annotation mode. Tip 3. HttpUtils: multiple network requests and large file uploads. Bytes ---------------------------------------------------------------------------------------
4. BitmapUtils: Image cache loading without considering OOM
Advantage: large file upload is supported, which is more efficient.
Github address:
Https://github.com/wyouflf/xUtils
V. Afinal

Afinal is an ioc and orm framework for android. It has four built-in functions: FinalAcitivity, FinalBitmap, FinalDb, and FinalHttp. Through finalActivity, We can bind the ui and events through annotations. Through finalBitmap, we can easily load bitmap images without having to consider problems such as oom. Through the finalDB module, we can add, delete, modify, and query android sqlite databases with a line of code. Through the FinalHttp module, we can request http data in the form of ajax
Function module:
1. FinalHttp: Used to request http data, direct ajax requests, file uploads, resumable download, and other uploads ---------------------------------------------------------------------------------------
2. FinalBitmap: used to display bitmap images without considering thread concurrency and oom. Bytes ---------------------------------------------------------------------------------------
3. FinalActivity: You can use annotations to bind controls and events without coding. Bytes ---------------------------------------------------------------------------------------
4. FinalDb: The orm framework of sqlite in android. add, delete, modify, and query data with a line of code.
Advantages: comprehensive functions, comprehensive documentation, and high code efficiency.
Github address:
Https://github.com/yangfuhai/afinal
Official Website:
Http://www.afinal.org

Vi. ThinkAndroid
ThinkAndroid is a free, open-source, simple Android development framework that complies with the Apache2 open-source protocol. Its development purpose is to develop Android applications in a simple and fast manner, it includes Android mvc, simple sqlite orm, ioc module, and http module that encapsulates Android httpclitent. It has the ability to quickly build a File Cache and can easily implement caching without considering the format of cached files, it also implements the image caching function based on the File Cache module. When loading images in android, the oom and image loading dislocation problems are easily solved. He also includes a practical tool that is frequently used in mobile phone development, such as log management, configuration file management, android download device module, network switching detection, and so on.
Function module:
1. MVC module: separates views from models. Bytes ---------------------------------------------------------------------------------------
2. ioc module: The ioc module in android can be fully annotated to perform UI binding, read resources in res, and initialize objects. Bytes ---------------------------------------------------------------------------------------
3. database module: The orm framework in android uses a thread pool to operate sqlite. Bytes ---------------------------------------------------------------------------------------
4. http module: Uses httpclient to encapsulate http data requests and supports asynchronous and synchronous loading. Bytes ---------------------------------------------------------------------------------------
5. cache module: cache can be well implemented through simple configuration and design, and cache can be configured freely. Bytes ---------------------------------------------------------------------------------------
6. Image cache module: when loading images in the imageview, you do not need to consider the oom and android container image dislocation during image loading. Bytes ---------------------------------------------------------------------------------------
7. configurator module: You can perform simple pairing configuration operations. Currently, the configuration file supports Preference and Properties for configuration access. Bytes ---------------------------------------------------------------------------------------
8. Log printing module: it can easily print logs quickly and easily. It supports log printing extension. Currently, it supports writing sdcard to local printing and console printing. Bytes ---------------------------------------------------------------------------------------
9. Download Device Module: it can easily implement multi-threaded download, background download, resumable download, and download control, such as start, pause, and delete. Bytes ---------------------------------------------------------------------------------------
10. Network status detection module: detects the network status when the network status changes.
Advantage: relatively complete functions.
Github address:
Https://github.com/white-cat/ThinkAndroid

VII. AndroidAnnotations
Android Annotations is an open-source framework used to accelerate the development of Android applications. It enables you to focus on the implementation of functions, simplify code, and improve maintainability.
Function module:
1. Dependency Injection )---------------------------------------------------------------------------------------
2. Simplified threading model )---------------------------------------------------------------------------------------
3. Event binding )---------------------------------------------------------------------------------------
4. REST Client restart ---------------------------------------------------------------------------------------
5. No Magic
Advantage: complete annotations make development more convenient, and fewer code is written by programmers.
Github address:
Https://github.com/excilys/androidannotations
Official Website:
Http://androidannotations.org/



Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.