Involve yourself completely in the development of Android Apps
It is a fact that mobile devices have ample of user-friendly applications than before thus, putting the internet in the handsets of many. Our Android program is a result-focused program, which aims to assist students create applications on the Android platform. This course encompasses the very basics to help learners know about the core of Android application development. You can also gain knowledge on Android setup, the SDK tools, advanced APIs such as graphics, contacts and much more.
Course code: AndroidAPP
Course duration: 6 weeks
Course objectives:
This course is designed to quickly help you learn to develop Android applications. The main objectives of this course include:
Understand the Android architecture
Install and use tools for Android such as IDE, device emulator, etc.
Create simple applications that run on Android platform
Create an application that uses multimedia, graphics, etc. under the Android operating system
Explain about Android SDK command-line and Eclipse plugin tools
Provide hands-on practical sessions on latest technology
Use built-in widgets for scrolling, tabbing and layout control
Use menus, toasts and more through Android action bar and handle menu selections
Access databases under the Android operating system
Support user-specific preferences using the Preferences API
Delegates will learn:
Upon completion of this course, you will be able to:
Create your own Android apps
Compare Android as an operating system with other mobile development platforms
Gain knowledge on Android applications, its life cycle and other external resources
Design applications with user interfaces by using your own layouts and Views
Use Android APIs for SMS, network management, etc.
Secure, tune and deploy applications on Android
Android developers are highly in demand across the world. We commit to offer a quality training program to help you make a brighter future and a profitable career in Android.
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 Eclipse IDE with the Android SDK (other IDEs will also be referenced)
Using the command line to build applications: using
ant and the SDK command line tools.
An intro to Logging, debugging, and profiling with both Eclipse 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
Shared Preferences
File I/O and the SD Card
7. Background processing: Services, Alarms and Notifications
Writing and Using Services
Alarms
Concurrency in Android: proper use of Java Threads
Handlers, AsyncTasks and synchronizing with the UI thread
All about Notifications
Interprocess communication
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
Webservices and RSS: XML and JSON parsing examples
Advanced networking with Protocol Buffers
11. Persistence Part 2, Broadcast Receivers
Using the sqlLite database
Data binding
Content providers
Broadcast Receivers: example SMS message handling
Effective background processing
12. Media: playing, streaming and recording audio and video.
Basic MediaPlayer usage and its limitations.
Using SoundPool effectively.
Advanced examples using the AudioTrack 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