Introduction to Android Development framework

Source: Internet
Author: User

I. Overview

Now Android Development has a lot of development framework to use, do not use the framework to do apps, but the idea of a good framework is also worth learning. Choosing the right Development framework provides practical features that simplify project development and improve efficiency.

Two. Afinal Framework

Brief introduction

Afinal is an Android SQLite ORM and IOC framework that encapsulates Android's easy-to-use HTTP framework. The purpose is simple and fast, the Convention is greater than the configuration principle. Try to do everything in one line of code.

Function Module Introduction

1) Database module: An ORM framework in Android, using a thread pool to manipulate SQLite.

2) Note module: The IOC framework in Android, fully annotated for UI and event binding. No need for Findviewbyid and Setclicklistener.

3) Network module: through httpclient encapsulation HTTP data request, support Ajax way to load, download, upload files.

4) Picture Cache module: When loading bitmap via Finalbitmap,imageview, it is not necessary to consider the problem of image dislocation during the bitmap loading process when Oom and Android containers are sliding quickly. Finalbitmap can configure the number of load threads, cache size, cache path, load animation, and so on. Finalbitmap memory management uses the LRU algorithm, There is no weak reference (after android2.3, Google does not recommend using weak references, after 2.3 forced recovery of soft references and weak references), better management of bitmap memory, Finalbitmap can be used to customize the download to extend the other protocol network picture display (FTP, etc.), while you can customize the bitmap display in I Mageview play the animation when the picture is displayed (the default gradient animation).

Three. Xutils Framework

Brief introduction

Xutils contains many useful Android tools, supports large file uploads with more comprehensive HTTP request protocol support, more flexible ORM more event annotations support and is not affected by confusion, minimum compatible with android2.2.

Function Module Introduction

1) dbutils module: Android in the ORM Framework, a line of code can be modified to check; Support transactions, default off; Through annotations custom table names, column names, foreign keys, uniqueness constraints, NOT NULL constraints, check constraints, etc. (note table and column names when confusing).

2) viewutils module: Android in the IOC framework, fully annotated way to UI, resources, event binding, new event binding method, the code is still working properly after confusion. Currently supports event binding in 20, see Viewcommoneventlistener Classes and Com.lidroid.xutils.view.annotation.event.

3) Httputils module: Support synchronous, asynchronous request, support large file upload will not oom; support get,post,put,move,copy,delete,head,options,trace,connect request; Download support 301/ 302 Redirect, support setting whether the download file needs to be renamed according to Content-disposition, the request to return text content (by default, only get request is enabled) supports caching, setting the default expiration time and the current request expiration time.

4) bitmaputils module: When loading bitmap, there is no need to consider the image dislocation when the Oom and Android containers are quickly sliding in the bitmap load; Supports network images and local image loading; memory management uses the LRU algorithm, configurable line loads load quantity, cache size, cache path, Loading animations, and so on.

Four. Thinkandroid Framework

Brief introduction

Thinkandroid is an Android development framework that follows the Apache2 Open source protocol, which is designed to be simple and fast to develop for Android applications.

Function Module Introduction

1) MVC module: Implement view and model separation.

2) IOC module: The IOC module in Android is fully annotated to implement UI bindings, res resource reads, object initialization.

3) Database module: An ORM framework in Android, using a thread pool to manipulate SQLite.

4) HTTP module: Supports synchronous asynchronous loading through HttpClient encapsulation of HTTP requests.

5) Cache module: Simple configuration and design for a good cache.

6) Picture Cache module: Image loading does not have to consider Oom and the Android container quickly sliding when the picture is misaligned.

7) Configurator module: Easy to implement pairing configuration operation, currently supports preference,properties.

8) Log Print module: Easy to implement log printing, support log extension, currently supports SDcard write local log, console printing.

9) Download module: To achieve multi-threaded background download, breakpoint continuation, the download control can start, pause, delete and so on.

10) Network Status Detection module: detects when the network status changes.

Five. Loonandroid Framework

Brief introduction

Similar to the spring implementation, a pointcut is found in the application life cycle to intercept the activity lifecycle and insert its own functionality. With no UI and special effects, the framework is designed to be lazy, and the framework sets up a bundle of tools.

Function Module Introduction

1) Automatic injection module: simply inherit the application within the frame.

2) Image loading: Multi-cache, automatic recovery, maximum memory security.

3) Network request: Implement all HTTP Requests

4) Eventbus: Integrating an open source framework

5) Validation Framework: Integrated validation Framework

6) JSON parsing: supports parsing into collections or objects

7) database

8) Multi-threaded breakpoint download, automatically determine whether to support multithreading and redirection

9) Automatic Update module

10) A range of tool classes

Six. Kjframeforandroid Framework

Brief introduction

Kjframeforandroid is also known as Jlibrary is the Android ORM and IOC framework, encapsulating bitmap and HTTP operation framework, easy to use. Get the most out of the operation with minimal code, with maximum efficiency and complete the most complex features.

Function Module Introduction

1) Plugin module: APK does not need to be installed to be applied to call, dynamic loading (life cycle and interactive events, r file resource reference, plug-in and app data communication), fragment perfect load use; dynamic registration Broadcastreceiver ; Perfect use of bindings, start-up service, simulated Launchmode effect (Launchmoder is actually a virtual, life cycle call is the same, only simulates the system Backstack) Perfectly integrates uilibrary->topology all functions in kjframeforandroid, supports annotation bound controls and sets up listening.

2) uilibrary module: Widget encapsulates commonly used controls to pull up Kjlistview,kjscrollview, two-finger zoom rotation Scaleimageview, etc. (see Project Org.kymjs.aframe.widget). The topology topology, which regulates the initialization of data and controls in activity, includes how the control is initialized using IOC design ideas. Set up listening through the annotations binding UI. Includes common layout interface, slide-slip effect, efficient tab navigation, 3D effect switch. Baseactivity and basefragment are well defined for developers, and you can get the full functionality of topology simply by inheriting it.

3) bitmaplibrary module: Any view loading picture without considering the problem of picture dislocation when Oom and Android containers are sliding quickly, and using the LRU algorithm to manage the cache by default.

4) httplibrary module: kjlibrary All HTTP communication data is cached by default, and the cache time is 5 minutes. Save traffic and reduce server pressure. Httplibrary use HttpClient and httpurlconnection two ways to achieve network communication, data upload, multi-threaded breakpoint download. According to Google recommendation 2.3, because httpurlconnection is unstable and has bugs as far as possible after using the httpclient,2.3 system only simple data interaction should use a lighter, more extensible httpurlconnection.

5) Dblibrary module: contains an ORM framework for Android, a line of code to complete the increase and deletion of the search. Support one-to-many, many-to-one queries. The DB module is largely reference to the FINALDB design and, based on this, improves all API annotations and more customizable DB operations.

6) Utilslibrary module: Includes application development common tool class, such as System level log management, network condition monitoring, bitmap compression class, get screen width height and unit conversion, error information processing, file processing, Preference, string manipulation and common regular judgment, etc. (see item org.kymjs.aframe.utils).

Introduction to Android Development framework

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.