Skip to content

mazouri/awesome-android-zh

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome Android Awesome

Android最佳实践,实用的 和 资源. 对于Java库,可以查看 awesome-java.

模拟器

图标

云服务

  • CloudRail - 统一的API库:云存储、Social Profiles、支付、电子邮件、短信和兴趣点等Unified API Library for: Cloud Storage, Social Profiles, Payment, Email, SMS & POIs.

数据绑定(Data binding)

  • Anvil - 受到React启发,可创建响应式UI组件的库。提供数据绑定和事件监听绑定,适应于MVVM
  • RoboBinding - Android平台的一个实现了数据绑定Presentation Model(MVVM) 模式的Android开源框架。 在没有性能损失的前提下(使用源代码生成来替代Java反射),RoboBinding 帮助你编写更可读,易于测试与维护的UI代码。
  • Data Binding Library - Android官方的数据绑定库,来编写声明式的布局文件和使用最少的代码使逻辑与布局结合

依赖注入

游戏开发

  • AndEngine - 免费,有趣,快速的Android 2D游戏引擎
  • Libgdx - 跨平台的游戏引擎和SDK(基于Java开发的) Open Source
  • Vuforia - 增强现实的库
  • Unity - 跨平台的游戏开发引擎
  • Rajawali - Android OpenGL ES 2.0/3.0 引擎
  • Cocos2d-x - 跨平台的2d游戏引擎

安全

UI界面库

ActionBar

Navigation

Animations

  • NineOldAndroids - Library for using the Honeycomb animation API on all versions of the platform back to 1.0.
  • Rebound - Rebound is a Java library that models spring dynamics.
  • Android View Animations - Cute view animation collection.
  • Android-Transition - Allows the easy creation of view transitions that react to user inputs.
  • Android-View-Actions - Makes creating complex animations for views easy.
  • Swipper - Android library for swipeable gestures to control volume , brightness and seek .
  • Spotlight - Android Library that lights items for tutorials or walk-throughs etc...

Images

  • Crescento - Explore new style in material design by adding curve below image view.
  • android-crop - Library project for cropping images.
  • CircularImageView - Custom view for circular images while maintaining the best draw performance.
  • Android-Image-Filter - Library project for applying image filters easily.
  • Compressor - Compressor is a lightweight and powerful android image compression library.

Inputs

  • FloatingLabel - FloatingLabel Allows you to create a blow kind of EditText. Doesn't have Gradle or Maven Support.
  • MaterialEditText - Supporting Floating Labels, Single Line Ellipsis, Max/Min Characters, Helper Text and Error Text with Custom Colors.
  • Emojicon - Adds emoticons to your app
  • MaterialSearchBar - Material Design Search Bar for Android

加载图片

视频

  • ijkplayer - 基于FFmpeg n3.2、MediaCodec、VideoToolbox的Android/iOS视频播放器

Camera

  • MagicalCamera - 简单的方式照相和从图库中选择图片,还提供了其他管理图片的功能

JSON

  • Gson - Gson is a Java library used for serializing and deserializing Java objects from and into JSON.
  • Jackson JSON Processor - High-performance JSON processor.
  • Moshi - A modern JSON library for Android and Java.

Crash monitoring

  • Fabric Crashlytics - Easy crash reporting solution.
  • HockeyApp - Distribution, Crash Reports, Feedback and Analytics
  • Splunk MINT - Monitoring, Crash Reports, Real time data, Statistic.
  • Bugsnag - Cross platform error monitoring.
  • Catcho - No Force Close any more.
  • Apteligent - Cross platform crash reporting/analytics solution. Supports NDK log.
  • Instabug - Bug reporting, Crash Reporting, In-app Feedback.

Networking

  • Ion - Good networking library for android.
  • OkHttp - An HTTP+SPDY client for Android and Java applications.
  • Asynchronous Http Client - An Asynchronous HTTP Library.
  • RoboSpice - Library that makes writing asynchronous network requests easy.
  • IceNet - Fast, Simple and Easy Networking for Android
  • Android Volley - Official Android HTTP library that makes networking for easier and faster.
  • IceSoap - Easy, asynchronous, annotation-based SOAP for Android.
  • node-android - Run Node.js on Android.
  • HappyDns - A Dns library, user can use custom dns server, dnspod httpdns. Only support A record.
  • RESTMock - HTTP Web server for mocking API responses in Android Instrumentation tests.
  • Packetzoom - SDK for optimizing HTTP requests and free analytics service for networking.
  • Fast-Android-Networking - A Complete Fast Android Networking Library that also support HTTP/2.

Logger

  • logger - Simple, pretty and powerful logger for android
  • timber - A logger with a small, extensible API which provides utility on top of Android's normal Log class.
  • LoggingInterceptor - An OkHttp interceptor which pretty logs request and response data.
  • Bugfender - Upload your logs and check them online, specially made for mobile
  • EzyLogger - Simple Lightweight logger

Notifications

Database

  • Cupboard - Access the sqlite easily via direct database access or through the ContentProvider framework.
  • DbInspector - Provides a simple way to view the contents of the in-app database for debugging purposes.
  • SQLite Asset Helper - manage database creation and version management using an application's raw asset files.
  • Realm - The alternative to SQLite and ORMs: Simple, modern and fast! Object oriented API and multi platform support.
  • Realm Asset Helper - Copies a realm database from the apk assets folder. Efficiently handles versioning of read-only realm databases.
  • RestorableSQLiteDatabase - A wrapper to replicate android's SQLiteDatabase with restoring capability.
  • Nitrite Database - A NoSQL embedded document store for Android with MongoDb like API.

ORM

  • requery - Compile time ORM and SQL query library for Java & Android.
  • GreenDAO - Light & fast ORM solution.
  • ORMLite - Lightweight ORM Java package for JDBC and Android.
  • ActiveAndroid - Active record style ORM.
  • Sugar ORM - Insanely easy way to work with Android Databases.
  • DBFlow - Fast and powerful ORM with compile-time annotation processing.
  • NexusData - Object graph and persistence framework for Android.
  • SimpleNoSQL - A simple NoSQL client for Android. Meant as a document store using key/value pairs and some rudimentary querying. Useful for avoiding the hassle of SQL code.
  • RxSimpleNoSQL - Reactive extensions for SimpleNoSQL. Manipulate entities using Observables.

REST

测试

  • Robotium - Test automation framework for black-box UI tests.
  • Roboletric - Unit test framework to run tests inside the JVM on your workstation, not in the emulator.
  • AssertJ Android - AssertJ assertions geared towards Android.
  • Green Coffee - Run your Cucumber tests in your Android instrumentation tests.

Tracking

  • MobileAppTracking - Tracking your marketing campaigns across multiple ad networks.
  • Mixpanel - Analytics platform to analyze the users.
  • Countly - Open source mobile & web analytics, push notifications and crash reporting platform, based on Node.js, MongoDB and Linux.
  • CleverTap - Analytics platform and user-engagement platform with 1 million free events

Maps

  • Google-Directions-Android - Allows you to calculate the direction between two locations and display the route on a Google Map using the Google Directions API.
  • Android Maps Extensions - Extending capabilities of Google Maps Android API v2, adding marker clustering among other things
  • Clusterkraf - Clustering library for the Google Maps Android API v2
  • MapScaleView - Scale bar for Google Maps Android API

工具

  • Conceal SharedPreferences - 安全的Preference使用了Facebook的安全加密工具Conceal.
  • EventBus - 简化组件间的通信
  • Otto - Android的事件总线库
  • Weak handler - android.os.Handler的内存安全实现
  • Byte Buddy - Runtime code generation library with support for Android.
  • Secure Preference Manager - Secure Preference Manager for android. It uses various Encryption to protect your application's Shared Preferences.
  • LeakCanary - Catch memory leaks as they occur.
  • Drekkar - An Android event bus for WebView and JS.
  • Androl4b - A vm for assessing android applications.
  • DroidMVP - Android library to help you incorporate MVP along with Passive View and Presentation Model patterns into your app.
  • Gota - Simplifying Android Permissions.
  • EasyDeviceInfo - Get device information in a super easy way.

调试工具

  • Linx - Show logcat inside the device for debug builds
  • Scalpel - 在手机中显示全部的View层级
  • Stetho - Debug hierarchy and network from chrome.
  • Android Debug Database - Android Debug Database is a powerful library for debugging databases and shared preferences in Android applications.

无线

  • SmartGattLib - Simplifies the work with Bluetooth SMART devices (a.k.a. Bluetooth Low Energy in Bluetooth 4.0).

Chat & Messaging

  • Applozic Android Chat SDK - Android Chat and Messaging SDK for adding real time chat and in-app messaging into your android application.
  • Qiscus SDK - Qiscus SDK is a lightweight and powerful android chat library. Qiscus SDK will allow you to easily integrating Qiscus engine with your apps to make cool chatting application.

自定义Dialog

  • MediaRecorderDialog - Custom Dialog to record audio, store it and play it in your phone.
  • HijriDatePicker - offers a hijri (Islamic Calendar) Date Picker designed on Google's Material Design Principals For Pickers.
  • Noty - A simple library for creating animated alerts/dialogs/warnings.

版本检测

  • AppUpdater - comprehensive and feature rich library, including support for checks at Amazon and FDroid.
  • Gandalf - comprehensive features and a "companion" iOS solution.
  • Siren - focused feature set that mimicks the popular iOS library of the same name. Supports Play and Amazon.
  • Fit - version checking callback framework with no UI.

Date & Time

Other

  • Android Support library - The Android Support Library package is a set of code libraries that provide backward-compatible versions of Android framework API.
  • Google Play Services - Library to access Google services, such as account syncing, Google+ (sharing, single sign-on), Google Maps, Location APIs, Google Play Games, Cloud Messaging, Android Device Manager, and others.
  • Tape - A lightning fast, transactional, file-based FIFO for Android and Java.
  • Guava: Google Core Libraries for Java - Collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth.
  • Android Scripting - Allows to run scripting languages on Android.
  • Android Priority Job Queue - Implementation of a Job Queue to easily schedule jobs (tasks) that run in the background, improving UX and application stability.
  • RateMeMaybe - Asks the user if (s)he wants to open the Play Store to rate your application.
  • Easy Rating Dialog - Lib provides a simple way to display an alert dialog for rating app.
  • ZXing Android-Integration - Integration with Barcode Scanner via Intent.
  • Gradle Retrolambda Plugin - Java 8 Lambdas on Android!
  • RxJava- RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.
  • Caffeine - A collection of utility classes that help make Android development faster.
  • AboutLibraries - Automatically generates an About this app section, with a list of used libraries.
  • AudioPlayerView - A view that loads audio from an url and have basic playback tools.
  • andle - command line tool help you sync dependencies, sdk or build tool version.
  • Typography - An Android library that makes it easy to use custom fonts in views.
  • Calligraphy - Custom fonts in Android an OK way.
  • transai - command line tool help you manage localization string files.
  • Android-Link-Preview - It makes a preview from an url, grabbing all the information such as title, relevant texts and images.
  • Sensey - Detecting gestures in a snap.
  • UserAwareVideoView - A customized video view that will automatically pause video is user is not looking at device screen!

Resources

Podcast

  • Fragmented is the Android developer podcast where Donn Felker and Kaushik Gopal talk about building good software and becoming better Android developers.
  • Android Developers Backstage is a podcast by and for Android developers. Hosted by developers from the Android engineering team, this show covers topics of interest to Android programmers, with in-depth discussions and interviews with engineers on the Android team at Google.
  • Android Dialogs is a video based podcast, where they have bite-sized conversations with people from the Android community.
  • Android Intelligence features in-depth interviews with interesting people from the Android world.
  • The Context a podcast about Android Development with Hannes Dorfmann, Artem Zinnatullin and wonderful guests!

More lists of libraries

Development Alternatives

My personal recommendation is (for now) to use the android api to build a native app. Scala can help to build this native apps with cleaner code but it adds to many methods (Multidex required). Kotlin is a modern language with 100% interoperatibility with java projects without multidex. But there are also use cases where alternatives like cross-platform development can be useful.

C#

  • Xamarin - Framework to create native iOS, Android, Mac and Windows apps in C#.

HTML, CSS and Javascript

  • PhoneGap - Open source framework by Adobe to create cross platform mobile apps using HTML, CSS, and JavaScript.
  • Titanium - Open-source framework to create 'native' cross platform apps using JavaScript.
  • NativeScript - An open-source framework to build native iOS and Android apps with JavaScript from a single code base.
  • React Native - A framework for building native apps with React by Facebook.
  • Ionic Framework - A framework to build hybrid apps with mobile-optimized HTML, CSS and JS with AngularJS.
  • Apache Cordova - Cordova based applications are, at the core, applications written with web technology: HTML, CSS and JavaScript.
  • Reapp.io - Cordova based framework to build hybrid apps with mobile-optimized HTML, CSS and JS with ReactJS.

Lua

  • Corona SDK - Framework to create native iOS and Android Apps (especially Games).

Scala

  • Scaloid - Library for less painful Android development with Scala.
  • Macroid - A modular functional UI language for Android.

Groovy

Kotlin

  • Anko - DSL for Android written in Kotlin by JetBrains.
  • Kotterknife - Android view injection written in Kotlin based on ButterKnife
  • Android Kotlin Samples - Some basic Android code samples written in Kotlin.
  • KAndroid - Lightweight library providing useful extensions to eliminate boilerplate code in Android SDK.
  • RxKotlin/Pocket - This app help user to save links easily, and can export to Evernote as weekly.

Performance

Other Awesome Lists

Other amazingly awesome lists can be found in the awesome-awesomeness list.

Contributing

Your contributions are always welcome! Please read the contribution guidelines first.

About

Android最佳实践,实用的库和资源

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published