Article source: mobile.51cto.com/abased-4019…

1.ActionBarSherlock

ActionBarSherlock, arguably the most popular Android open source project on GitHub, is a standalone library that, with an API and theme, makes it easy for developers to use all versions of Android’s action bar design patterns.

For Android 4.0 and later, ActionBarSherlock can be automatically implemented using native ActionBar, while for previous versions without ActionBar functionality, custom ActionBar implementations based on Ice Cream Sandwich will automatically revolve around the layout. Make it easy to create an Action bar app for Android 2.x and above.

2.facebook-android-sdk

The Facebook SDK for Android is an open source library that allows developers to integrate Facebook into their Android applications.

3.SlidingMenu (SlidingMenu Demos)

SlidingMenu is an open source Android library that makes it easy for developers to create an app that implements the kind of sliding menus popular in Google+, Youtube, and Facebook apps.

  

Android apps using SlidingMenu:

  • Foursquare
  • Rdio 
  • Plume 
  • VLC for Android
  • ESPN ScoreCenter 
  • MLS MatchDay 
  • 9GAG
  • Wunderlist 2
  • The Verge 
  • MTG Familiar
  • Mantano Reader
  • Falcon Pro (BETA)
  • MW3 Barracks 

4. cocos2d-x

In the mobile development space, coCOS2D-X has been used by numerous companies and development teams for mainstream iOS/Android games. Cocos2d-x is an open source multi-platform 2D game framework developed in C++, based on cocos2d-iphone, released under the MIT license. The main branch is rendered on GitHub using OpenGL ES 2.0, while the older GLES11 branch is rendered using OpenGL ES 1.1.

Supports iOS, Android, Windows Phone 8, Bada, BlackBerry, Marmalade, Windows, Linux and other platforms. Support C++, Lua, JavaScript programming languages.

5. Android GitHub android App supports Issues, Gists and integrated news Feed which allows you to keep up with organizations and Gists of interest developers, Gists, etc. The app also provides a panel where users can quickly access issues you create, monitor, and publish, view and bookmark issues, and configure filters for tags, milestones, and tasks.

The Android repository contains all the source code for the GitHub Android App.

6.Android-ViewPagerIndicator

The ViewPager pointer item, which indicates where the ViewPager is when it is used, just like the effect of switching in Google Play, can also be used on the introduction page during application initialization.

ViewPager compatible with Android support libraries and ActionBarSherlock, originally based on Patrik Akerfeldt’s ViewFlow.

7. MonoGame

MonoGame is an open source cross-platform implementation of the Microsoft XNA 4.x Framework. For XNA developers to port their Xbox 360, Windows & Windows Phone games to iOS, Android, Mac OS X, Linux, and Windows 8 Metro. PlayStation Mobile & Raspberry PI is in development.

8.Android-PullToRefresh

This project is intended to provide a reusable drop-down refresh widget for Android. It was originally derived from Johan Nilsson’s library (mainly graphics, strings, and animations), but these have since been superseded.

9. android-async-http

Android-async-http is an asynchronous, callback-based HTTP client development package for Android, built on Apache’s HttpClient library.

10.Android-Universal-Image-Loader

On Android, the most troublesome thing is to get pictures, display and recycle from the Internet. Any problem in any link may be directly OOM. This project may help you.

The purpose of Universal Image Loader for Android is to achieve asynchronous network Image loading, caching and display, support multi-thread asynchronous loading. It originated from Fedor Vlasov’s project and has since been extensively refactored and improved.

11. GreenDroid

Originally launched by Cyril Mottier, GreenDroid is an Android UI development library that makes UI development easier and consistent across applications.

12. Anki-Android

AnkiDroid is a free, open source Flash app for Android that can be downloaded directly from Google Play.

13.android-actionbar

The Action Bar is a window function that identifies the application and the user’s location, and provides the user with Action and navigation modes. In most cases, the action bar is used when developers need to highlight user behavior or use it in activities with global navigation because it enables applications to provide a consistent interface to users and the system to adapt the appearance of the action bar to different screen configurations.

Main purpose of Action Bar:

  • Provide a dedicated space for identifying the application’s identity and the user’s location.
  • Provide consistent navigation and visual experience across different applications.
  • Highlight the Activity’s key actions and provide quick access to the user in a predictable way.

14.android-viewflow

Android – ViewFlow is a view switching effect library on the Android platform. Viewflow is equivalent to the Android UI component to provide horizontal scrolling ViewGroup, using Adapter for item binding.

 

15.android-mapviewballoons

When using the Android Maps External library (com.google.android.maps), Android-MapView Balloons provide an easy way to annotate map coverage as simple information bubbles.

It consists of BalloonOverlayView, which is a view that represents the bubble that displays your MapView and BalloonItemizedOverlay, which is an abstract extension of ItemizedOverlay.

16.PushSharp

A server-side library that sends push notifications to iOS (iPhone/iPad APNS), Android (C2DM and GCM), Windows Phone and Windows 8 devices.

17.androidannotations

Android Annotations, an open source framework used to speed up Android application development, allow you to focus on implementing features, simplifying code and improving maintainability.

18.HockeyKit

Hockey is an iOS ad-hoc automatic update framework. Available to all apps in the Apple App Store, it significantly improves the overall Beta testing process and is divided into two parts: the server and the client framework. The server component requires all the scripts, but can work alone without a client library. It provides a Web interface that Beta testers can use to install the latest AdHoc configuration files or to install the latest Beta versions directly on the device through Safari.

  • Multiple applications with different package identifiers can be handled by installing the server once on the server (some developers strongly recommend using different package identifiers for Debug, AdHoc Beta, and AppStore distributions).
  • By default, when the App starts or wakes up, the client detects updates from the server and the user can make changes in the Settings dialog: once a day or manually check for updates.
  • In addition to iOS, HokeyKit is also available on Android, although the Android version is in Alpha and supports OTA and in-app updates.
  • Provide server hosting services for HockeyKit users.

19.android-menudrawer

There are many different styles of menu display on Android, but the most commonly used and most experienced is sliding left and right to show hidden menus. Android-menudrawer is a sliding menu implementation that allows users to seamlessly navigate through the application. The project has a variety of menu displays, the most common of which are shown by dragging at the edge of the screen or clicking the “Up” button in the action bar.

 

Functions:

  • Menus can be placed along four sides.
  • Support for attaching an always-visible, non-draggable menu.
  • The contents of the menu and the entire window can be hidden.
  • Can be used for XML layouts.
  • An indicator that displays the current visible screen.

20. android-flip

Aphid FlipView is a UI component that implements Flipboard page turning.

21. drag-sort-listview

DragSortListView (DSLV) is an extension to The Android ListView that supports drag-and-drop sorting and swiping to delete. The TouchInterceptor (TI) class was rewritten to provide more elegant drag-and-drop animations.

 \

DSLV features:

  • Perfect drag and drop support;
  • Provides smoother scrolllist scrolling while dragging;
  • Supports a high degree of diversity per ListItem
  • Expose the startDrag() and stopDrag() methods;
  • There are exposed interfaces for customizing dragged Views.

DragSortListView works with lists with any priority: favorites, playlists, lists, etc. It’s the perfect Android open source drag-sort solution.

22. c-geo-opensource

C: Geo is a simple and powerful unofficial geographic treasure hunting client for Android devices. Unlike other similar applications, C: Geo does not require a Web browser or file output. You can take your smartphone with you on a geo-treasure hunt when you’re unprepared. Of course, you don’t have to pay, because it’s free.

\

C -geo-opensource contains all c:geo opensource code.

For details, please refer to C :geo

23. NineOldAndroids

Since Android 3.0 and above, the SDK has added a new android.animation package, which contains classes that are related to animation implementation. Using the Honeycomb API, you can achieve very complex animation effects. However, if you want to make the API available in versions 3.0 or later, Nine Old Androids is your best choice. The API is the same as Honeycomb’s API, but with a change in the way you access com.nineoldandroids.xxx.

\

The project consists of two projects, Library, which is an implementation Library for animation effects, and Sample, which is a demonstration of how to use the API. Developers can download and install the Nine Old Androids Sample directly on Google Play to view the demo.

See Nine Old Androids for details

24. ppsspp

PPSSPP is a free cross-platform open source simulator developed by Henrik Rydgard, co-founder of GC/Wii Simulator Dolphin, Support Windows, Linux, Mac, Android, iOS, BlackBerry 10 and other mainstream computers and mobile operating systems, can directly work on x86, X64, ARM and other CPU platforms, released under the GNU GPLv2 license. Written primarily in C++ for efficiency and portability.

\

As long as OpenGL ES 2.0 is supported, PPSSPP can run on fairly low-spec hardware devices, including ARM-based phones and tablets.

Please refer to PPSSPP for details

25. androidquery

Android-query (AQuery) is a lightweight development kit for implementing asynchronous tasks and manipulation UI elements on Android, making Android application development simpler, easier, and more fun.

26. droid-fu

Droid-fu is an open source, general-purpose Android application library designed to make Android development easier. It contains a number of utility classes, as well as very easy-to-use Android components.

Droid-fu provides support in the following areas:

  • Android app life cycle help
  • Support for handling Intents and Diagnostics classes
  • Background Task Support
  • HTTP message processing
  • Object, HTTP response, and remote image caching
  • Customize various Adapters and views

\

One of droid-Fu’s biggest strengths is its life-cycle help class. If you’re developing an Android app that runs background tasks, such as fetching data from the Web, you’ll definitely use Droid-Fu, but the project has been discontinued on GitHub.

For details, see Droid-fu

27. TextSecure

TextSecure is an encrypted messaging client for Android developed by the Whisper Systems team to enhance the security of user and corporate communications. Its source code was published by Twitter in 2011 in the GitHub open source database.

\

The software allows users to encrypt all text messages sent and received on an Android device, as well as sending encrypted messages to another TextSecure user.

28. XobotOS

XobotOS is a Xamarin research project designed to port Android 4.0 from Java/Dalvik to C# and to measure performance and memory footprint.

\

29. ignition

When writing Android apps, Ignition can get your Android app off the ground quickly by providing ready-to-use components and utility classes with lots of boilerplate files. Ignition covers the following regions:

  • Widgets, Adapters, Dialog and other UI components;
  • An HTTP Wrapper library that allows you to write simple but powerful web code;
  • Classes that load and cache remote Web images;
  • A simple but effective caching framework (caching HTTP responses to all object trees into memory or hard disk);
  • Intents, Diagnostics, and several other help classes that make the API level more backward compatible;
  • Friendlier and more powerful implementation of AsyncTask.

\

Ignition consists of three subprograms:

  • Ignition – Core is an Android library project that can be compiled directly into the App.
  • Ignition – Support — a standard Java library project that is deployed as a plain JAR containing most of the utility classes. Developers can use the core modules of the project independently.
  • Ignition – Location – An Android AspectJ library project that can be compiled directly into an application. Enables location applications to get the latest location information without requiring Activity location update processing.

For details, see ignition Sample Applications

30. android_page_curl

Android_page_curl is an example program on Android using OpenGL ES to achieve a similar page turning effect. (Click the link for a video demo.) \

\

31. asmack

When it comes to aSmack, Smack comes naturally. Smack API is a complete open source API library that implements the XMPP protocol, while aSmack is a build version of Smack on Android that was migrated to GitHub in early February 2013. The repository does not contain much code, but is simply a build environment. Developers can use the API to develop INSTANT messaging applications based on the XMPP protocol.

For details, please refer to asmack

32. AndroidBillingLibrary

In-app Billing is a Google Play service that allows you to sell digital content within your app, including downloaded content such as media files and photos, as well as virtual content such as game levels, potions, value-added services and features. The Android Billing Library implements all the specifications of in-app Billing and provides more advanced classes to use.

\

Google officially released Android In-app Billing V3 at the end of 2012, but the Android Billing Library on GitHub is currently only available for version V2, which will be updated In early 2013.

For details, please refer to Google Play in-app Billing

33. Crouton

Crouton is a class on Android that allows developers to replace toasts in the environment in the form of an application window, where the developer decides to display them.

\

Developers can download and install Crouton Demo on Google Play to see the Demo.

34. cwac-endless

CommonsWare Android Components (CWAC) is an open source Android component library designed to solve common problems in various aspects of Android development. Each CWAC component is packaged into a separate JAR file, which contains CWAC – Endless.

\

Cwac – Endless provides an EndlessAdapter, which is an automatically paged List that automatically requests new data when the user browses to the last row of the List. \

Please refer to Commons Ware for details

35. DiskLruCache

In Android application development, in order to improve the UI fluency, response speed, to provide a higher user experience, developers often rack their brains to think about how to achieve efficient loading of pictures, and DiskLruCache is one of the commonly used picture caching technology developers. A Disk LRU Cache, as its name implies, is a Cache that uses limited space in a file system. Each cache entry has a string key and a fixed-size value.

\

Click the link to download the library project.

36. Android-SlideExpandableListView

If you’re not happy with the Android ExpandableListView and want to achieve a Spotify like effect, SlideExpandableListView is definitely your best bet. The library allows you to customize the ListView for each list item by sliding the list item area as soon as the user clicks a button. \

\

37. gauges-android

Gaug. Es for Android is an app that provides real-time statistics on web traffic on Android devices. Provic-android contains the source code for the provic-Android app, which can be downloaded and installed directly on Google Play. \

\

38. acra

ACRA is a library that lets Android apps automatically send crash reports in the form of Google Docs spreadsheets, designed to provide developers with access to data when an app crashes or misbehaves. \

\

39. roboguice

RoboGuice is a library developed on Android platform based on Google Guice, which can greatly simplify the code of Android application development and some tedious and repetitive code. Brings simple, easy-to-use dependency injection to Android, and if you’ve ever used Spring or Guice, you know how convenient this approach to programming can be. \

\

40. otto

Otto is a powerful Guava-based event bus released by Square that focuses on Android support, decoupling different parts of an application while still allowing them to communicate effectively. \

\

For details, please refer to Otto