Android Application Development

imaginaryfleetΚινητά – Ασύρματες Τεχνολογίες

19 Ιουλ 2012 (πριν από 5 χρόνια και 1 μήνα)

242 εμφανίσεις

Wind River Education enables you to unleash the power of
Wind River’s technology. Our training and mentoring
empower developers with the knowledge and proficiency
required to program and manage device software faster and
more reliably. Reduce your project risks and shorten your
development timelines by equipping your engineers with the
right training from our experts.
Course Description
The Android Application Development course provides
engineers with a fast, cost-effective way to acquire the skills
to use Android in embedded systems development.
Attendees get an in-depth look at how to set up for Android
development and quickly start creating applications and
appliances that run this platform.
After this course, participants will be able to:
• Explain how Android technology is used in embedded
platforms.
• Set up and use the Android Development Tools (ADT) and
Android software development kit (SDK).
• Deploy code to both the Android emulator as well as
Android-based devices.
• Use a broad range of Android APIs including multimedia,
location services, power management, 2D and 3D graphics,
user interface events, and much more.
Products Supported
• SDK Platform Android 2.2, API 8
Who Should Attend
• Engineers and developers who are interested in creating
embedded systems based on Android technology
Prerequisite Skills
• Familiarity with embedded systems and software
development concepts
• Basic understanding of C++ or Java languages and
object-oriented development
• Some familiarity with Linux or Unix-based commands
preferred
Prerequisite Courses
• None
Related Courses
• Wind River Linux and Workbench Essentials
Course Format
• This three-day expert-led course consists of lectures and
lab sessions.
• Attendees use ADT, Android SDK, Eclipse editor, and
QEMU-based Android emulator to gain experience with
the topics presented.
• Participants examine and exercise simulated network
topologies in hands-on labs.
• Participants receive individual guidance from an expert
engineer who has extensive experience with Wind River
technologies.
Global Reach of Wind River Education Services
With more than 30 years of device software experience, we
provide education services in every region of the world. You
can rely on our expertise—acquired delivering hundreds of
classes each year to thousands of students—to provide a
highly effective learning experience, wherever your
developers are located.
Private Classes
Private classes are conducted at your location, scheduled for
your convenience. Private classes include the use of a
preconfigured laboratory environment that may consist of a
connection to a remote lab environment or equipment that we
bring to your facility. Private classes can be tailored to your
specific needs by adding or removing topics from multiple
courses, maximizing the benefit of your time in class.
Course Title: Android Application Development
Duration: Three days
Format: Instructor-led lectures and hands-on
lab sessions
Price: Contact your local sales representative
Android Application Development
Mentoring
Our Mentoring programs are provided by experienced
engineers whose coaching can increase your team’s
productivity while reducing your project’s risk.
Whether you need assistance with product installation and
configuration, advice on development workflow, or
optimization best practices, mentoring can shorten your
trial-and-error cycle, document recommended procedures,
and ensure your developers are using tools and technology
efficiently. If you have limited time to resolve a particular
issue, a Wind River expert can evaluate your system and
development environment, and assist you in building a
debug framework, instrumenting code, verifying software
updates, and general hands-on debugging.
All of our education services are led by expert engineers who
are closely connected to the Wind River technical community
for access to specific expertise.
Syllabus
Day 1
Introduction to Android
• Android History
• Open Handset Alliance
• Android Architecture
- Android Versions
• Android and Linux
• Supported CPU Architectures
• Android in the Mobile Space
• Android as an Embedded System
• Android Process Model
• Android Terminology
• Android Security Concepts
Setting up for Android Development
• Platform Requirements
• Windows, OS/X, or Linux?
• 32- vs. 64-bit Support
• Getting the SDK
• Installing and Configuring the SDK
• Building Android Applications from the Command Line
• Installing and Running the Android Simulator
• Virtual Targets vs. Real Targets
• Connecting Real Targets to Your Development
Environment
• Building Android from Source
• Lab: Setup of Development Environment
Building/Debugging Code for Android
• Android’s Version of Java
• Dalvik VM vs. J2SE VM
• Supported Java Libraries
• Android-Specific Libraries
• Procedural vs. Declarative Approaches to Android Code
• Command Line vs. GUI Builds
• Enabling the Eclipse GUI for Android Development
• Connecting and Using the Android Debugging Interface
• Dalvik Debug Monitoring Service
• Lab: Command-Line Android Development
• Lab: Android Development in Eclipse
Day 2
Structure and Life Cycle of Applications
• What Makes an Android Application?
• Applications Spanning Activities
• Activity Life Cycle
• Main Application/Activity Methods
• Simple Activity State Saving
• Activating Components via Intents
• Typical Project Structure
• Creating Activities Dynamically
• Specifying the UI via XML vs. via Java
• Android Activity Manifest
• Application Resources and Assets
• Lab: Adding Application Resources
Key Android Services
• Understanding “Intents”
• Activities and Intents
• Services and Their Intents
• Broadcast Receivers and Their Intents
• The Intent Class
• Example Action/Data Pairs
• Standard Activity Actions
• What Are Services?
• Service Life Cycle
• Creating Services
• Handling Alarms and Notifications
• Data Storage and Retrieval
• Accessing Network and Web Services
• Sound and Graphics
• Accessing the Locale
• Dynamic String Substitution for Localization
• Lab: Using Intents
Graphics in Android
• Android Graphics Support for 2D and 3D
• Graphics APIs
• Drawing with Java
• android.graphics Libraries
• Approaches for 2D Graphics
• Drawing with XML
• OpenGL 3D Graphics Support
• Lab: Graphics
User Interface Events
• Event Listeners
• Event Listener Callbacks
• Event Handlers
• Supporting Touch Interfaces
• Interface Focus-Related APIs
• Gesture Support
• Multi-touch Support
• App Widget Framework
• Widgets and Battery Utilization
• Lab: User Interface Events
Telephony Support
• Telephony Basics
• CDMA vs. GSM vs. LTE
• Android Telephony Manager
• Making a Phone Call
• Sending/Receiving SMS Messages
• Lab: SMS Message Handler
Day 3
Sound and Multimedia Support
• Android Sound Architecture
• Multimedia Framework
• OpenCORE Architecture
• Built-in Media Decoding Formats
• Media Playback
• Access Permissions
• Audio and Video Recording
• Lab: Audio
Location Services
• Course-Grain vs. Fine-Grain Location Services
• GPS-Based Location Requirements
• Locations Based on Cell-Tower Proximity
• Approximate Location Based on IP Address
• Location Manager Service
• Location Data Source API
• Displaying Your Location
• Google APIs
• Lab: Location
Bluetooth Services
• Bluetooth Protocol Stack
• Enabling Bluetooth in the Android Manifest
• Android Bluetooth Classes
• Bluetooth Discovery
• Bluetooth Device Pairing
• Bluetooth Socket and Thread Example
Platform Integration
• Making Linux Devices Available to Android
• Managing Sensors
- Accelerometers, Digital Compass, etc.
• Integrating Sensors into Android
• Low-Level Sensor Drivers
• Integrating into libsensors
• Power Management
- Driver-Space Wake Lock API
- User-Space Wake Lock API
- Wake Lock Types
- Power Management Callbacks
• Android Native Development Kit (NDK)
- How NDK Works
- NDK Platform Requirements
- Calling Out to Linux
- Building Native Code with NDK
- Debugging Native Code
• Porting Android
- Supporting Linux
- Integrating LCDs
- Sound and Graphics Services
• Android Boot Sequence
- init Language
Getting Your Application into the Android Marketplace
• Signing Your Application
• Debug vs. Release Mode of Applications
• Adding Your Key and Setting up a Google Account
• Android Marketplace
• Finishing Touches
• Charging for an Application
- Revenue from Advertising
- Fees for Applications
- Supporting Your Customers
• Lab: Deploying Your Application
Summary
• Where We’ve Been
• Where to Next
• Suggested Resources
• Android Reference Books
Wind River World Headquarters
500 Wind River Way
Alameda, CA 94501
USA
Toll-free: 800-545-9463
Tel.: 510-748-4100
Fax: 510-749-2454
training@windriver.com
Wind River EMEA
Steinheilstrasse 10
85737 Ismaning
Germany
Tel.: +49 89 962 445 0
Fax: +49 89 962 445 999
emea-training@windriver.com
http://education.windriver.com
Wind River is a world leader in embedded and mobile software. We enable companies to develop, run, and
manage device software faster, better, at lower cost, and more reliably. www.windriver.com
© 2010 Wind River Systems, Inc. The Wind River logo is a trademark of Wind River Systems, Inc., and Wind River and VxWorks are registered trademarks of Wind River Systems, Inc.