Android™ Bootcamp Training Course
Course Summary
Android™ Bootcamp Training Course is a hands-on training for designing and building mobile applications using Android™ open-source platform. Android™ Bootcamp course explains the philosophy of developing for Android™ through its main application development building blocks and their interaction with one another.
This complete hands-on course encourages students to learn by building increasingly more sophisticated and meaningful mobile applications for Android™.
By the end of the course, each participant will build their own complete Android application incorporating most of the key aspects of the platform. Typically, we build a Twitter app for Android, but there are other choices depending on participants' interests.
This course has been updated for Ice Cream Sandwich.
[top] Duration
5 days.
2 course(s)
[top] Objectives
Upon completion of this course, you will be able to:
- Build your own Android apps
- Understand how Android™ applications work, their life cycle, manifest, Intents, and using external resources
- Design and develop useful Android™ applications with compelling user interfaces by using, extending, and creating your own layouts and Views and using Menus.
- Take advantage of Android's Application Framework API to build complex applications.
- Utilize the power of background services, threads, and notifications.
- Use Android's communication APIs for SMS, telephony, network management, and internet resources (HTTP).
- Secure, tune, package, and deploy Android™ applications
[top] Audience
This course is designed for software developers interested in designing, creating, deploying, and testing applications for the Android™ mobile phone platform. It is valuable to both novices and gurus, who already have experience in developing mobile applications for other platforms.
[top] Prerequisites
Java experience is required to get the most benefit from this training.
[top] Setup Requirements
We provide Android-ready workstations to students attending our public (open-enrollment) classes, though many still wish to use their own laptops. Whatever the case may be, if you wish to use your own computer to attend this training, please take a look at our detailed setup instructions.
For Android training, you need to have the following installed:
- JDK 6
- Android SDK
- Eclipse (3.6.2 or later)
- Android Development Tools (for Eclipse)
Detailed instructions are available at: http://d.android.com/sdk/installing.html Alternatively, you can download a pre-configured Ubuntu VMWare image from Marakana: We recommend OSX or Ubuntu operating system. For Windows users, we recommend also installing Cygwin.
[top] Instructors
Aleksandar (Saša) Gargenta is the technology brains at Marakana. Always on top of the latest in software, Aleksandar is the company's radar for technology that matters. His latest ventures are perfecting Marakana's Android Internals and Security courses.
Phew. And if that's not enough, he's also the chief architect of Marakana Spark, the on-demand software platform that powers marakana.com and a number of other training companies. As an instructor he's taught hundreds of classes for everyone from Apple to Disney, from NASA to the Department of Defense.
In his spare time Aleksandar runs the San Francisco Java, Android, and HTML5 User Groups with over three thousand members across the three groups.
Aleksandar holds a bachelor’s degree in Mathematics and Computer Science from the University of Waterloo. He is also a father, photographer, hiker, and a race-car driver :-)
Blake is an engineer with more than 20 years of experience, much of it with Java. He's built systems as large as Amazon's massively scalable AutoScaling service and as small as a pre-Android OSS/Linux and Java based platform for cell-phones.
He's currently deep in Android. Blake is co-author of two O'Reilly books on Android, including the best-selling, "Programming Android".

Blake writes the popular and informative blog "Portable Droid"
More about G. Blake Meike...
Ken Jones has thousands of in-class hours teaching advanced technical topics, and over 20 years experience in technical training and documentation targeted towards software developers. Ken has delivered training to various software development teams within the Fortune 1000 such as Cisco, Intel, IBM, Boeing, AT&T, Ericsson/Nokia, and many more. Ken's expertise spans multiple areas of software development; he has trained teams in Java, Javascript, Android, and advanced web development with HTML, CSS, and XML.


Ken is recognized world-wide as a Tcl/Tk expert. He is co-author of Practical Programming in Tcl and Tk, 4th ed. and Tcl and the Tk Toolkit, 2nd ed., which are regarded as the authoritative resources for the Tcl/Tk language. Ken was lead instructor at Scriptics, where he worked with John Ousterhout, the creator of Tcl, and other key developers of the Tcl language including Jeff Hobbs and Brent Welch.
Ken also worked for companies including Borland, Silicon Graphics, and Sybase where he specialized in products for creating graphical user interfaces and for providing database connectivity. Ken enjoys learning new programming languages, and has worked in almost a dozen over the course of his career. (He fondly recalls some projects in FORTH.) Ken holds a Bachelor of Science degree in Liberal Arts with a concentration in Economics from Regents College in New York and a Master of Business Administration from San Jose State University.
Ken's presentation from Android Open 2011:
More about Ken Jones...
Marko founded Marakana back in 2001 to help underprivileged youth, minorities, and inner-city kids learn web technologies and get ahead in life. So Marakana emerged with goal of helping people get better at what they do professionally, focused on open source software training.
Marko is the developer of Marakana Android Training series. He has taught Android for companies such as Sony-Ericsson, Qualcomm, Ericsson Canada, and many others. Marko is a co-founder of San Francisco Android Users Group and regularly teaches Android Bootcamp at Marakana.
Marko is author of Learning Android book published by O'Reilly Media. This book is based on Android Bootcamp and incorporates best learning practices for new developers to start creating applications for this exciting open source mobile platform.
Marko is also the co-chair of Android Open, an O'Reilly conference focusing on Android ecosystem.
In 2006 Marko Gargenta published "PHP and MySQL By Example", a collection on PHP examples. The book was published by Prentice Hall, world's largest technology publisher and has been also translated to Spanish.
Marko Gargenta obtained his Bachelor of Mathematics Degree from University of Waterloo (Canada's MIT) and has been developing in Java since 1996. He lives in San Francisco, California.
More about Marko Gargenta...[top] Outline
Android Overview
- Android Overview
- History
- Android Versions
The Stack
- Stack Overview
- Linux
- Native Libraries
- Dalvik
- App Framework
- Applications
Quick Start
- Installing SDK
- Hello, World!
- The Emulator
Main Building Blocks
- Main Building Blocks Overview
- A Real World Example
- Activities
- Intents
- Services
- Content Providers
- Broadcast Receivers
- Application Context
Yamba Project Overview
- The Yamba Application
- Project Design
- Part 1: Android User Interface
- Part 2: Preferences, File System, Menus
- Part 3: Android Services
- Part 4: Working with Databases
- Part 5: Lists and Adapters
- Part 6: Broadcast Receivers
- Part 7: Content Providers
- Part 8: System Services
Android User Interface
- Two Ways to Create User Interface
- Views and Layouts
- Starting Yamba Project
- StatusActivity Layout
- StatusActivity Java Class
- Logging in Android
- Threading in Android
- Other UI Events
- Adding Color and Graphics
- Alternative Resources
- Optimizing User Interface
Preferences, File System, Options Menu
- Preferences
- Options Menu
- Shared Preferences
- File System, Explained
Services
- Yamba Application Object
- UpdaterService
- Looping In The Service
- Pulling Data From Twitter
Databases
- About SQLite
- DbHelper
- First Example
- Update UpdaterService
- Refactoring Status Data
Lists and Adapters
- TimelineActivity
- Basic TimelineActivity Layout
- About Adapters
- Timeline Adapter
- ViewBinder: A Better Alternative
- Updating Manifest File
- Base Activity
Broadcast Receivers
- About Broadcast Receivers
- BootReceiver
- The TimelineReceiver
- Broadcasting Intents
- The Network Receiver
- Adding Custom Permissions
Content Providers
- Creating Content Provider
- Using Content Providers Through Widgets
System Services
- Compass Demo
- Location Service
- Updating Yamba to User the Location Service
- Intent Service
- Sending Notifications
[top] Additional Notes
Android Meetup Group Organized by Marakana
Marakana team organizes and runs the San Francisco Android Users' Group - an interactive group of Android developers. In our monthly meetings, we discuss Android landscape from both technology and business angles. We often have great presentations by industry experts, group discussions, as well as hands-on sessions. If you are in San Francisco Bay Area, we encourage you to join the group and meet other Android developers.
Android SDK Version
This course is constantly updated for the latest Android SDK, but the instructor will discuss differences between releases as well.
Trademark Notice
Android is a trademark of Google Inc. Use of this trademark is subject to Google Permissions.
[top] Student Testimonials
Overall, I really enjoyed the class and the experience. Mark is a quirky guy, but a subject matter expert who kept it fun and interesting (except for content provider, that was boring :)).
Marakana's Android Bootcamp is the best of the best when it comes to Android Training. Android from a high level is a rather daunting task, but Marko breaks it down into what is important and what can be ignored. Overall, the class exceeded my expectations and I would highly recommend it to anyone who wants to get a better grasp on Android.
This course was great. Ken was excellent. As someone without a developer background it was a bit difficult for me to keep up with the concepts at times, despite taking a Java for Android preparatory class beforehand. However, I feel well prepared to continue to learning Android and the Java development language. Thanks!
Overall, I was very impressed with the course, and I feel very confident designing Android applications.
Mark Murphy is an excellent trainer. I would recommend this class, and Mark's books, to anyone wanting to learn Android programming.
it's fast, but liked it. lots of material and L10N/I18N topic as well.
The course met my expectations, it was very well taught and had an excellent format including plenty of hands on activities. The Twitter app project was great to get exposure to the main Android constructs.
Great Teacher!
Great course and instructor.
The level of material was perfect for me. Coming from an iOS world, the course delivered exactly what I needed to make the transition of concepts I know in one world (iOS) to the Android world. Awesome class! Instructor's knowledge is top notch and teaching abilities are great.
Mark is certainly very knowledgeable. I enjoyed the format of the class (lecture, lab). I also appreciate that the labs are cumulative AND he has completed the labs himself AND provides answers to all the labs for reference or to build upon for advanced labs (sometimes you fall behind or just don't get it to work, which makes the cumulative lab process catastrophic).
The instructor was supremely knowledgeable, not only in the course material, but on android in general. Obviously, he is an astute developer in addition to being a course instructor. I especially appreciated the tips on best practice and coding style, and the instructor's willingness to address questions outside the scope of the course project.
I liked how Marko consistently made sure everyone was on the same page and provided help to anyone who had major issues.
One of the best technology training sessions I've attended, period. Comprehensive coverage of important topics. The inclusion of a real world exercise in app development kept me engaged throughout the course. Great job, Marakana folks!
Excellent training! I want to continue writing Android code.
Very thorough knowledge of Android. Excellent training.
Great class -useful hands on experience and real time stuff. Right on time for our project as well !Thanks .
This was a great training. The instructor was very well prepared and during the week he was able to keep the pace of the course at the right level.
Excellent presentations, projects and demos. Working demos and takeaways. Clean facilities. Good food.
The Android Bootcamp taught by Marko Gargenta is just what our company needed to be successful at releasing our first Android application. Marakana's quick response to our call for an onsite, tailored class helped us to achieve our desired time to market as well.
Great Pace and Training.
Sasa was very thorough and knowledgeable about the topics we discussed.
Awesome job! Thanks!
Most excellent course!
I really like the course. I learned all of the major components to android development and would definitely recommend this course.
Excellent class, thank you!
Excellent training!!! Thanks so much for everything. Marko did a great job of tailoring this to what we needed
It was a great learning opportunity. Also this provided a sneak peek review of all abilities and implementation android provides. I had a great experience!!!
Can't wait to try out my new skills!
Marko is an exceptional trainer, as he is able to keep the novice on track without losing the interest of the more experienced members of the group. He takes his coaching and training duties very seriously. I enjoyed the class very much and I learned a lot. Marko was able to keep the interest of the group focused with interactive exercises. His in-depth knowledge of Android, Java, and Eclipse, on both MS Windows and Apple MAC are invaluable. I now feel comfortable I can implement my newly acquired knowledge to develop useful Android applications. This 5-day Boot-camp training is a worthwhile training. I highly recommend it.
