Developing Android Applications
Special Notices
Please note, this course is currently in development. As such, elements of this outline may be subject to change. The course is currently scheduled for release in Q4 2012. Please call to register interest.
Overview
Based on Linux, Android has rapidly emerged as the platform of choice for a wide range of mobile devices. In the short time since its first distribution in 2007, it has become one of the most widely used and prolific operating systems. Applications for Android are mostly written in the popular programming language Java, and a well-developed SDK is provided by Google, together with an emulator for development on the desktop.
This is a technical course that introd…
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
Special Notices
Please note, this course is currently in development. As such, elements of this outline may be subject to change. The course is currently scheduled for release in Q4 2012. Please call to register interest.
Overview
Based on Linux, Android has rapidly emerged as the platform of choice for a wide range of mobile devices. In the short time since its first distribution in 2007, it has become one of the most widely used and prolific operating systems. Applications for Android are mostly written in the popular programming language Java, and a well-developed SDK is provided by Google, together with an emulator for development on the desktop.
This is a technical course that introduces programming Android applications. It is suitable for programmers starting new projects on Android, or for those maintaining existing applications.
It is an instructor led presentation with hands on exercises course using the Android development environment on Microsoft Windows, but is equally applicable to other
Prerequisites
Previous knowledge and experience of Java is assumed, and some knowledge of XML is required. Experience of using Android at a user level is not assumed but will be an advantage, as will previous experience of Eclipse.
Delegates will learn how to
- Use Eclipse with the Android emulator as a productive development environment to write and run Android applications
- Understand Android features
- Exploit the Android developer's SDK
- Appreciate the differences between versions of Android
- Design and write effective user interfaces for Android applications
- Exploit hardware features available on a variety of devices
- Effectively use external services and resources
Course Outline.
Chapter 1: Introduction to Android
- Rationale and history: Hardware; Software versions
- Architecture: Linux kernel; Java framework; Dalvik VM
- Apps!: Standard; Bespoke
- Current Android platforms
- Phone and tablet: Differences and similarities
- Android and SDK versions
- ... the future? ...
Chapter 2: The Development Environment
- Android SDK
- Eclipse: ADT Plugin; Basics of the IDE - projects; Basics of the IDE - perspectives; DDMS; Debugging
- ADV Manager: Eclipse; Stand-alone
Chapter 3: Use of Java in Android
- OO concepts review
- Java language review
- Introduction to Android classes: Activities; Views; ViewGroups; Intents
- Application security
- The Manifest File
Chapter 4: UI Fundamentals
- Activities
- Declaring in the Manifest file
- Views and ViewGroups: Layouts (predefined ViewGroups); Widgets; Menus; Status Bar Notifications; Use of XML for UI components
- Relationships between activities: The 'back stack'; Activity life-cycles and call-backs; Saving state; Intents
- UI Events: Event Handlers and Listeners
- Coding standards and practices
Chapter 5: Services
- Declaring in the Manifest file
- Use of threads/the IntentService class
- Started and stopping services
- Bound Services
- Status Bar
- Toast Notifications
- Broadcast receivers
Chapter 6: Content Providers
- Provided providers: Contacts
- Writing your own content provider: Declaring in the Manifest file; Private content providers for data storage
- Querying and retrieving data
- Modifying data
Chapter 7: Network Access
- Overview
- Web access: HttpComponent
- WiFi
- Bluetooth
Chapter 8: Data Access
- Internal storage - private data
- SD card: Use for storing public data; How to emulate them in an AVD; Backup using the BackupManager
- External Storage
- SQLite: Creating databases and tables; Inserting data; Retrieving data with cursors; Updating data; Deleting data; Using a content provider for data access; Upgrading a database definition; Using SQL with rawQuery()
Chapter 9: Devices & External Services
- Camera
- Location, Location, Location: GPS (and friends); Google Maps
- USB
- Sensors
- Telephony
- Multi-media
Chapter 10: Further UI Topics
- Extra Widgets: Date picker; Time picker; Rating Bar; Gallery
- Custom components: Compound Widgets
- Graphics
- Animation
- Interface standards and practices: Designing for hardware variety
Chapter 11: Testing
- Activities
- Content Provider
- Services
- Using Eclipse
- Using monkey
Chapter 12: Publishing
- Preparing for release
- The Eclipse Export Wizard
- Android market
- Security
- Signing
- Versioning
Chapter 13: Beyond Java
- Other development techniques
- NDK - C/C components
- Mono – C#
- SL4A
- Android Market / Play Shop ... How to become a millionaire!!!
There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.
