The explosive growth of mobile device computing has changed the way companies do business and the sheer volume of data now accessed by mobile devices has never been greater. Pace University has the most comprehensive and current programs found anywhere in the greater New York (NY) Metropolitan area.
For those with little to no experience in mobile device computing, we have a pathway to get in the game with the Introduction to Object Oriented Software Development for Mobile Device Computing. We provide and support programs for the two leading mobile platforms today: Android and iPhone (iOS) including an advanced iOS application development program.
Learn how to build mobile apps on any platform and advance your career skills by calling us today!
Spring 2015 Course Schedule
Monday & Wednesday Evenings
April 8 - July 1, 2015
163 William Street, Mac Lab
New York, NY 10038
Tuition: $2,450 (includes all course materials) Course #:90615
The Android platform is an open source mobile and embedded device platform from Google. Currently there is rapid growth in the number of Android based mobile devices being released on all the major mobile phone carriers around the world, with a common development platform and application market for third party developer applications.
This 48-hour course consists of classroom instruction, followed by hands-on development exercises at a computer with the Android SDK. Class room hours will be supplemented by homework assignments. Students will be required to plan, design and build a fully functional Android application project by the end of the course.
Students in the Android and iPhone class will have access to the Mobile Device Computing Lab once per month to work collaboratively with one another and / or with an instructor to help students one-on-one or in small groups (homework assignments, lessons, exercises and / or class projects).
Participants will receive a Pace University Certificate of Completion.
Students will learn how to design and build Android Mobile applications and will gain a thorough knowledge and understanding of the Google Android framework and platform.
Who Should Enroll
Anyone who is interested in learning how to build mobile apps for the Google Android mobile platform or others seeking to better understand mobile application development process.
Students are required to have a background in Object Oriented Programming; the Java programming language is preferred. Access to an Android phone and / or tablet is recommended but not required.
The Certificate in Android Application Development class meets twice per week on Monday and Wednesday evenings. This is an instructor-led course. Additional lab hours are available (Mobile Device Computing Lab - open lab / optional. Meets three times throughout course)
Monday and Wednesday evenings: 6:30 pm to 8:30 pm (2 hours) Four (+) hours per week for 12 weeks. Total Android classroom hours - 48 hours / 12+ weeks.
Outline for Certificate in Android Application Development
1. Introduction to the Android OS and the Android SDK
Android and its history, the Open Handset Alliance and the Android Open Source Project.
Overview of Android OS architecture and internals, the Dalvik Virtual Machine.
Overview of required Java concepts and libraries and key concepts of mobile device development.
Overview of the Android platform components (the key classes and UI components).
The Android Software Developer Kit installation and developing your first application in Eclipse.
2. Exploring the Android SDK Tools
Using the Android Studio with the Android SDK (other IDEs will also be referenced)
Using the command line to build applications: using the SDK command line tools.
An intro to Logging, debugging, and profiling with both Android Studio and DDMS (Dalvik Debug Monitor Server)
An intro to the application life cycle: activities and tasks
Using AppInventor and other rapid development tools.
3. Designing a Mobile Application in Android: The User Interface
From idea to code: from use cases to class diagrams with UML and related tools.
Designing layouts with views and components declaratively with XML (and visually with Eclipse)
When to design layouts programmatically, creating custom views and components.
Widgets, UI Events, UI Themes and Styles
All about the application manifest configuration file.
Resources and Assets, screen size compatibility, localization and OS compatibility.
4. Lists, Dialogs, Menus, Toasts and more
Advanced Layouts, optimizing layouts using tools
Lists and adapters, custom components
Menus and submenus
Using Toasts, Progress Bars, Spinners and more.
The Webkit View
5. Activities and Intents in Depth
Tips for a successful activity lifecycle: avoiding the FC (force close)
All about Intents and Intent Filters
Designing efficient UI navigation, inter-activity communication
6. Permissions, Maps and Persistence Part
Security and Permissions
An intro to the Google Maps API
File I/O and the SD Card
7. Background processing: Services, Alarms and Notifications
Writing and Using Services
Concurrency in Android: proper use of Java Threads
Handlers, AsyncTasks and synchronizing with the UI thread
All about Notifications
8. Android UI Inputs, Accelerometer and sensors
User Input via touchscreen, keyboard, trackball and d-pad
Using the accelerometer effectively
Additional sensors: compass, proximity, orientation
Effective synchronization with UI and sensors.
9. Graphics with Canvas and Open GLES
Drawing with Canvas, all about Drawables
An OpenGL ES Primer: for both 2D and 3D
Case Study in writing a 3D OpenGL game
10. Location and Networking APIs
Using GPS Effectively
About HTTP and networking
Web services and RSS: XML and JSON parsing examples
Advanced networking with Protocol Buffers
11. Persistence Part 2, Broadcast Receivers
Using the SQLite database
Broadcast Receivers: example SMS message handling
Effective background processing
12. Media: playing, streaming and recording audio and video.
Basic Media Player usage and its limitations.
Using Sound Pool effectively.
Advanced examples using the Audio Track class.
Audio and video streaming. using RTSP
13. Android 2.x and beyond: the latest APIs and Android Best Practices
App Widgets and Live Folders and Live Wallpapers
Using the Bluetooth API
Using the Contacts API
Gestures, Text-to-Speech and Speech Recognition
Best Practices: Unit Testing, UI consistency, accessibility
Best Practices: Profiling for performance, responsiveness and seamlessness
Optimizations, tips and tricks to make development easier, faster
14. Selling Your Application and Advanced Android Topics
Publishing your application on the Android Market and other markets.
About ads, app pricing, and alternative revenue streams and marketing.
Using AdWhirl the open source multi-network ad server and client
Intro to the Android NDK - when and not to use C/C++ code
Contributing back to the AOSP, how to build the Android OS from source.
Porting Android to new devices, interfacing with hardware.