This book was created by Nitya Narasimhan (founder, GDG Hudson Valley and co-organizer, GDG New York) for use by GDG members participating in the 2015 Android Study Jam.
The book is the collective effort of the contributors listed below. You can view the current book online at nitya.gitbooks.io. Changes made to the repository are automatically published to the online version using webhooks.
This book is not meant for sale and should not be used or leveraged in any commercial context.
Content has been rigorously linked to sources for full attribution. If you are the owner or author of any content cited here, and wish for it to be edited, removed or annotated in any way, simply create an issue on our GitHub page and we will be happy to comply.
Please add your name to the list below if you made commits, reported issues or contributed improvements to the book or repo. Link to your GitHub handle if possible.
The jam is scheduled for 8 weeks along the following schedule. The hours shown for each lesson are approximations - your mileage may vary.
- L1: Create Project Sunshine 5-8 hrs
- L2: Connect Sunshine to Cloud 8-10 hrs
- L3: New Activities & Intents 8-10 hrs
- L4a: Activity Lifecycle & Data 5-8 hours
- L4b: Content Providers 5-8 hours
- L4c: Hooking it Up with Loaders 10-12 hrs
- L5: Rich and Responsive Layouts 8-10 hrs
- L6: Services and Notifications 5-8 hrs
- Final Project 10-20 hrs
Udacity recently (on February 13, 2015) updated the courses to reflect the Android Studio 1.0 release. This involves changes to the Sunshine App codebase as documented here.
As a result, there are actually two repositories for the codebase. Use Sunshine2 if you are following along with the latest updates. This is the recommended course of action.
The older Sunshine app version is still available for reference. This book will soon be updated to use the latest version in all links. Where this has been done, the text will be updated with a note indicating it is relevant to Sunshine2.
Udacity recommends setting aside 6 hours/week to work on the lessons. Your actual mileage may vary based on lesson and programming background, so budget or adapt accordingly.
In addition, we will meet (as a study group) for 1-2 hours a week, time that you can use for Q&A, discussion -- or simply to work on your own Android project or to explore advanced features related to that lesson.
Check out their an Android Studio Setup Guide -- however some of the content (e.g., videos) may be slightly out-of-date since they predate the latest Android Studio 1.0 release.
Check out their Materials section for more resources and downloadable content for each lesson. Note that it's possible to download all videos and watch them offline (if network connectivity is an issue).
Check out their complete Sunshine app on GitHub with a branch for each lesson/step. Use this as a reference only if you get stuck - its always best to do the exercise yourself to gain a better understanding of the materials.
Prep Session: We'll kick off with a session to cover the big picture, and to help with initial setup and other questions. Register here to attend. The presentation is also available online here.
Study Sessions: We will hold regular (weekly) study sessions to review materials, answer questions or debug issues. You MUST join the GDG Hudson Valley meetup and RSVP for each event. A "living document" version of the review presentation is available here. It will continue to be updated on a weekly basis over the course of the Jam.
Hangouts: We may complement in-venue meetings with online hangouts run on Google+. When these are held, they will be announced on our GDG Hudson Valley community page and you will need to RSVP there to join.
Chatroom: You can join the Gitter chatroom (below) for interactive discussion at any time. The chat room maintains a sliding window of 2 weeks of history which will be enough to scan or recap the just-past, current and upcoming week discussions.