android-skeleton-project

This is the Android Skeleton Project that I use when I start a new project. It contains various utilities, fixes, bolierplate code and stuff that I use regularly and have developed over 5 years of working with Android. It's not meant to be run on the device, so don't try that. It's just a basic architecture with a set of some neat abstractions.

If you will be using this skeleton application for your development, I will be greatful if you could send me a 'thanks' in the way you believe satisfying=) And feel free to send me a message if you need something explained.

Here's a list of things that are in the skeleton: :: architecture that supports both phones and tablets

:: all activites go from FragmentActivity with latest Support Library

:: BaseContext implementation available in all Activites and Fragments

:: abstract BaseActivity implementation with lots of bolierplate utilites

:: abstract BaseFragment implementation

:: abstract BaseDialogFragment implementation

:: Extended Views

:: StaticCache - just a static cache for all project to access it when needed (use carefully)

:: DataManager - class that is usually responsible in initing database and do stuff on data

:: AbstractDataLoader - a neat abstraction on loaders that abstracts away all complex stuff exposing only simple buildList() method - don't recall where I grabbed it

:: Network Layer

:: Data Layer

:: Amazing SQLiteTable abstraction that abstracts away necessity to remember column indexes. With BasicModel conjunction makes database layer neat and easy to maintain

:: BasicModel + DBInterface abstraction that allows to tie Model with database table, adding all database logic into the model class allowing to have everything model-database-related to be in one place.

:: Utility classes

:: Facebook SDK library already in :: Picasso, Retrofit, OKhttp, Jackson, Google Play Services, Bugsense, Mixpanel, OkIo, CardView and latest SupportLibrary

:: A set of flat Button styles

:: Release/Beta/Debug build configurations :: Proguard settings for the most common set of libraries