##Prework: Environment Configuration and Git
- Install and configure Android Studio
- Install GenyMotion and VirtualBox
- Install JDK 1.7 and configure Android studio to use it rather than 1.6
- Install and configure Git
- Explain unit testing
##Unit 1: Java & OOP
- Collections, Iteration, OOP, Inheritance, Exceptions, Conditionals
- Types, variables, operators
- Methods, conditionals, loops
- Objects and classes, inner classes
- Collections (Array, ArrayList, LinkedList, HashMaps, TreeMaps)
- Access control, class scope, packages, java API
- Interfaces, inheritance, file i/o
- Exception handling (Try, Catch, Finally)
##Unit 2: Intro to Android SDK
- Android Manifest xml file
- src / res / gen directory
- Intro to Activities
- MVC
- Adapters
##Unit 3: Intro to Views and Fragments
- Creating String Resource Files
- XML Layout
- Pixel Densities and multiple screen sizes
- Fragments / Fragment Managers
- ListFragments / ListViews
- MVC
- 9 patch images
##Unit 4: Flexible UI
- Java Threads
- AsyncTask
- Loopers, handlers and handler threads
##Unit 5: API’s and Concurrency
- Intro to REST API’s and the Internet
- HTTPURLConnection
- URI Builder
- XmlPullParser
- JSON Parsing
- Memory cached arrays for JSON parsed Data
- Open source Libraries with Gradle
- Retrofit Networking Library
##Unit 6: Persistence
- Saving to local JSON
- SQLite
- Loaders, Loader Managers, AsyncTaskLoader, ExecutorServiceLoader
- Content Providers
##Unit 7: Advanced Intents
- Allow apps services' to be used by other applications
##Unit 8: Google Play and Google Cloud Services
- Distributing apps via Google Play
- Preparing APK for Google Play
##Unit 9: Advanced Testing and Debugging
- ADB Logs
- Logcat
- TraceView
##Unit 10: Final Project