GithubHelp home page GithubHelp logo

ivanshih / ultimate-resources-android-devs Goto Github PK

View Code? Open in Web Editor NEW

This project forked from wahibhaq/ultimate-resources-android-devs

0.0 1.0 0.0 88 KB

Compiled & Curated List of Resources for Android Developers

License: MIT License

ultimate-resources-android-devs's Introduction

Compiled & Curated List of Resources for Android Developers

I am trying to compile and curate a collection of resources which can be pretty handy for Android Developers. Something like an aggregator for all the relevant and vital pieces of information for our fraternity.

Note : This is an on-going list and I will keep updating it ! Feel free to comment or submit a PR for changes or additions.

Learning what it takes to become one


Best practices shared by others to help you


Stuff I can read to revise my knowledge


Regular Updates, Banter & Articles

Podcasts

Design and UX


Third-party Libraries

  • This represents the List of "must have" libraries that are extremely popular and are often used in almost any Android project.

  • Android Arsenal is a Portal for Android tools and libraries.

  • Discover top Android libraries based on their popularity in high-ranking apps on Libtastic.

  • Open Source libraries from Square (We just can't thank them enough !)

  • A curated list 1 & list 2 of awesome Android UI/UX libraries.

  • Fitness
  • Lifecycle Handling
  • Logging
    • Hugo
    • Lynx : see LogCat output right in the app, useful for QAs and developers
    • DebugOverlay : A tiny window overlay to log app internal on top of your android app.
    • Timber : A logger with a small, extensible API which provides utility on top of Android's normal Log class.
  • Debugging
    • LeakCanary : detect memory leaks without IDE! Must have for QAs and developers.
    • TinyDancer — see frame rate right on your screen. Must have for QAs and developers.
  • Improved Architecture
    • LightCycle : LightCycle is an Android library that helps break logic out of Activity and Fragment classes into small, self-contained components called LightCycles. It is provided by Soundcloud.
  • Location
    • ReactiveLocation : Small library that wraps Google Play Service API in brilliant RxJava Observables reducing boilerplate to minimum.
  • Data Access Layer
    • GreenDAO : Light & fast ORM solution for Android that maps objects to SQLite databases.
  • Code Generation / Reducing Boilerplate code
    • AutoValue : Value types in Java are hard. Well, not hard, but tedious. Google’s AutoValue library makes them much easier. This article provides nice overview.
    • Auto Parcel : AutoValue extension that enables Parcelable values generation.
    • Auto Value Json : AutoValue extension to add Gson De/Serializer support.
    • Esperando : Easy SharedPreference Engine for Android. Helps in avoiding a lot of boilerplate code & it uses an Annotation Processor to generate a class implementing the defined interface at compile time.
    • FuckBoilerplate : Collection of several resources to reduce boilerplate.
    • Dart : Extra "injection" library for Android which uses annotation processing to generate code that does direct field assignment of your extras.
    • Icepick : Android library that eliminates the boilerplate of saving and restoring instance state. It uses annotation processing to generate code that does bundle manipulation and key generation, so that you don't have to write it yourself.
    • DeepLinkDispatch : A simple, annotation-based library for making deep link handling better on Android.
    • SqlDelight : Generates Java models from CREATE TABLE statements.
  • Images Loading & Caching
    • Glide : An image loading and caching library for Android focused on smooth scrolling.
    • Picasso : A powerful image downloading and caching library for Android.
  • Image Processing
    • AndroidPhotoFilters : AndroidPhotoFilters aims to provide fast, powerful and flexible image processing instrument for creating awesome effects on any image media.
    • uCrop : This project aims to provide an ultimate and flexible image cropping experience.
  • JSON Parsing and Serialization
    • LoganSquare : Screaming fast JSON parsing and serialization library for Android.
  • Reactive Programming
    • Agera : Agera is a set of classes and interfaces to help write functional, asynchronous, and reactive applications for Android.
  • MVP
    • Nucleus : A simple Android library, which utilizes the Model-View-Presenter pattern to properly connect background tasks with visual parts of an application.
    • Mosby : A Model-View-Presenter library for modern Android apps.
    • DroidMVP : Small Android library to help you incorporate MVP, Passive View and Presentation Model patterns in your app.
  • Graph/Charts
    • MPAndroidChart : A powerful Android chart view / graph view library, supporting line- bar- pie- radar- bubble- and candlestick charts as well as scaling, dragging and animations.
    • Hellochart : Charts/graphs library for Android compatible with API 8+, several chart types with support for scaling, scrolling and animations.
  • Permissions
    • Dexter : Android library that simplifies the process of requesting permissions at runtime.
  • Device Info
    • EasyDeviceInfo : Android library to get device information in a super easy way.
  • Showing Hints
    • HintCase : HintCase is a library for Android that will help you create really awesome hints/tips for your apps.
  • Custom Views and Animations
    • Depth-Lib : A library that gives depth to Views.
    • Elegant-Underline : Exploring possible implementations for better underline text decoration on Android. There's a detailed article on this as well.
    • Focus Resize : A custom animation with scroll listener to recycler views.
    • DiscreteSlider : A slider that allows a user to select a value at one of the specified tickmarks.
  • Database
    • greenDAO : Android ORM for your SQLite database.
  • Simplifying Communication between building blocks
    • EventBus : Android optimized event bus that simplifies communication between Activities, Fragments, Threads, Services, etc. Less code, better quality. There's a nice comparison between Otto and EventBus.
    • Otto : An enhanced event bus with emphasis on Android support.
    • RxAndroid : RxJava bindings for Android.
  • Fonts
  • Communication
  • Crash Reports
    • ACRA : ACRA is a library enabling Android Application to automatically post their crash reports to a GoogleDoc form. Acralyzer is the backend which needs to be hosted to display Acra Reports.

Third-party tools

  • Debugging
    • [Stetho](a powerful new debugging platform for Android) : A powerful new debugging platform for Android developed by Facebook. It can help in Inspecting Network Connections, Querying SQLite Databases or Manipulating Your App’s Preferences.
    • CharlesProxy : Charles is an HTTP proxy / HTTP monitor / Reverse Proxy that enables a developer to view all of the HTTP and SSL / HTTPS traffic between their machine and the Internet.
  • Static Code Analysis
    • Infer : Facebook Infer is a static analysis tool - if you give Infer some Objective-C, Java, or C code, it produces a list of potential bugs.
  • Avoiding the dreaded 65K limit
    • Methods Count : Android libraries are great, but they come at a cost. Use this tool to avoid the dreaded 65K method limit of the DEX file format!
  • 3rd Party Libs
    • For keeping a check on latest version of 3rd party libs added in Gradle, you can use Gradle,please in order to avoid checking individually on the official pages. Another way is to use gradle-version-plugin which is a Gradle plugin to discover dependency updates.

Third-party useful plugins/projects

  • Static code analysis
    • Android-Check : Static code analysis plugin for Android project. (Checkstyle, PMD)
    • Eror Prone : Catch common Java mistakes as compile-time errors. Developed by Google.
    • android-project-example : It is project for fast create android applications, using Checkstyle, FindBugs, PMD and lint.
    • A good collection can be found here as well.
    • Android Lint Checks

Rules, Code Style and Best Practices

Experts & Devs to follow

Kotlin

Rx

  • RxJava for Android : Personally curated list of learning resources for this RxJava stuff and how it applies to Android.

Communities and User Groups


Tracking Droidcon events


Open Source

  • Bootstrap
  • Frameworks
    • Rosie : Android framework to create applications following the principles of Clean Architecture.
    • Conductor : A small, yet full-featured framework that allows building View-based Android applications.
  • Other Awesome Apps out there
  • Other Programming languages for Android
    • Kotlin : Kotlin is a Statically typed programming language for the JVM & Android. It's 100% interoperable with Java.

Other Collections

Success is simple. Do what's right, the right way, at the right time ~ Arnold H. Glasow

ultimate-resources-android-devs's People

Contributors

akikanellis avatar codeteo avatar tiwiz avatar wahibhaq avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.