Siêu thị PDFTải ngay đi em, trời tối mất

Thư viện tri thức trực tuyến

Kho tài liệu với 50,000+ tài liệu học thuật

© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Pro Android 2 pdf
PREMIUM
Số trang
737
Kích thước
10.8 MB
Định dạng
PDF
Lượt xem
1739

Pro Android 2 pdf

Nội dung xem thử

Mô tả chi tiết

Hashimi

Komatineni

MacLean Android 2 Pro

Companion

eBook

Available

Covers Google’s Android 2 Platform including advanced

topics such as OpenGL, Widgets, Text to Speech,

Multi-Touch, and Titanium Mobile

Sayed Hashimi | Satya Komatineni | Dave MacLean

Pro

Android 2

Trim: 7.5 x 9.25 spine = 1.375" 736 page count

COMPANION eBOOK SEE LAST PAGE FOR DETAILS ON $10 eBOOK VERSION

US $49.99

Shelve in

Mobile Computing

User level:

www.apress.com Intermediate-Advanced

SOURCE CODE ONLINE

BOOKS FOR PROFESSIONALS BY PROFESSIONALS®

ISBN 978-1-4302-2659-8

9 781430 226598

5 49 9 9

this print for content only—size & color not accurate

CYAN

MAGENTA

YELLOW

BLACK

PANTONE 123 C

SPOT MATTE

Android, Google’s open-source platform for mobile development, has

the momentum to become the leading mobile platform. Pro Android 2

shows you how to build real-world mobile apps using Google’s Android SDK.

Android is easy to learn yet comprehensive, and is rich in functionality.

The absence of licensing fees for Android OS has borne fruit already with many

distinct device manufacturers and a multiplicity of models and carriers. Indi￾vidual developers have a great opportunity to publish mobile applications on

the Android Market; in only five months’ time the number of applications has

doubled, with over 20,000 available today. And the widespread use of Android

has increased demand for corporate developers as companies are looking for

a mobile presence. You can be part of this.

With real-world source code in hand, Pro Android 2 covers mobile application

development for the Android platform from basic concepts such as Android

Resources, Intents, and Content Providers to OpenGL, Text to Speech, Multi￾touch, Home Screen Widgets, and Titanium Mobile. We teach you how to build

Android applications by taking you through Android APIs, from basic to ad￾vanced, one step at a time.

Android makes mobile programming far more accessible than any other

mobile platforms available today. At no cost to you, you can download the

Eclipse IDE and the Android SDK, and you will have everything you need to

start writing great applications for Android mobile devices. You will not even

need a physical device—the Android SDK provides an emulator that you can

run on your desktop.

Pro Android 2 is the result of over two years of effort to bring together in one

place everything you need—both basic and advanced—to be an Android

developer. So what are you waiting for?

s

i

Pro Android 2

■ ■ ■

Sayed Y. Hashimi

Satya Komatineni

Dave MacLean

ii

Pro Android 2

Copyright © 2010 by Sayed Y. Hashimi, Satya Komatineni, and Dave MacLean

All rights reserved. No part of this work may be reproduced or transmitted in any form or by any

means, electronic or mechanical, including photocopying, recording, or by any information

storage or retrieval system, without the prior written permission of the copyright owner and the

publisher.

ISBN-13 (pbk): 978-1-4302-2659-8

ISBN-13 (electronic): 978-1-4302-2660-4

Printed and bound in the United States of America 9 8 7 6 5 4 3 2 1

Trademarked names may appear in this book. Rather than use a trademark symbol with every

occurrence of a trademarked name, we use the names only in an editorial fashion and to the

benefit of the trademark owner, with no intention of infringement of the trademark.

President and Publisher: Paul Manning

Lead Editor: Steve Anglin

Development Editor: Douglas Pundick

Technical Reviewer: Vikram Goyal

Editorial Board: Clay Andres, Steve Anglin, Mark Beckner, Ewan Buckingham, Gary Cornell,

Jonathan Gennick, Jonathan Hassell, Michelle Lowman, Matthew Moodie, Duncan

Parkes, Jeffrey Pepper, Frank Pohlmann, Douglas Pundick, Ben Renow-Clarke, Dominic

Shakeshaft, Matt Wade, Tom Welsh

Coordinating Editor: Fran Parnell

Copy Editor: Elizabeth Berry

Compositor: MacPS, LLC

Indexer: BIM Indexing & Proofreading Services

Artist: April Milne

Cover Designer: Anna Ishchenko

Distributed to the book trade worldwide by Springer-Verlag New York, Inc., 233 Spring Street, 6th

Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax 201-348-4505, e-mail orders￾[email protected], or visit www.springeronline.com.

For information on translations, please e-mail [email protected], or visit www.apress.com.

Apress and friends of ED books may be purchased in bulk for academic, corporate, or

promotional use. eBook versions and licenses are also available for most titles. For more

information, reference our Special Bulk Sales–eBook Licensing web page at

www.apress.com/info/bulksales.

The information in this book is distributed on an “as is” basis, without warranty. Although every

precaution has been taken in the preparation of this work, neither the author(s) nor Apress shall

have any liability to any person or entity with respect to any loss or damage caused or alleged to

be caused directly or indirectly by the information contained in this work.

The source code for this book is available to readers at www.apress.com. You will need to answer

questions pertaining to this book in order to successfully download the code.

iii

To my son, Sayed-Adieb.

—Sayed Y. Hashimi

To my beautiful wife, AnnMarie, for her spirit; to Ashley, for her undaunting hope; to Nikolas, for

his kindness; to Kavitha, for being smart, witty, and fabulous; to Narayan, for sheer cuteness; and

to all my extended family in India and the USA for their love.

—Satya Komatineni

To my wife, Rosie, and my son, Mike, for their support; I couldn't have done this without them.

And to Max, for spending so much time at my feet keeping me company.

—Dave MacLean

iv

Contents at a Glance

■Contents at a Glance...................................................................................................iv

■Contents.......................................................................................................................v

■About the Authors.....................................................................................................xiii

■About the Technical Reviewer ..................................................................................xiv

■Acknowledgments .....................................................................................................xv

■Foreword...................................................................................................................xvi

■Chapter 1: Introducing the Android Computing Platform ........................................... 1

■Chapter 2: Getting Your Feet Wet.............................................................................. 25

■Chapter 3: Using Resources, Content Providers, and Intents ................................... 57

■Chapter 4: Building User Interfaces and Using Controls......................................... 123

■Chapter 5: Working with Menus and Dialogs.......................................................... 171

■Chapter 6: Unveiling 2D Animation......................................................................... 217

■Chapter 7: Exploring Security and Location-Based Services.................................. 243

■Chapter 8: Building and Consuming Services......................................................... 289

■Chapter 9: Using the Media Framework and Telephony APIs................................. 327

■Chapter 10: Programming 3D Graphics with OpenGL ............................................. 363

■Chapter 11: Managing and Organizing Preferences ............................................... 421

■Chapter 12: Exploring Live Folders......................................................................... 439

■Chapter 13: Home Screen Widgets ......................................................................... 457

■Chapter 14: Android Search.................................................................................... 491

■Chapter 15: Exploring Text to Speech and Translate APIs...................................... 563

■Chapter 16: Touchscreens ...................................................................................... 591

■Chapter 17: Titanium Mobile: A WebKit-Based Approach to Android

Development ....................................................................................... 627

■Chapter 18: Working with Android Market............................................................. 661

■Chapter 19: Outlook and Resources ....................................................................... 675

■Index ....................................................................................................................... 687

v

Contents

■Contents at a Glance....................................................................................... iv

■Contents .......................................................................................................... v

■About the Authors ........................................................................................ xiii

■About the Technical Reviewer.......................................................................xiv

■Acknowledgments..........................................................................................xv

■Foreword .......................................................................................................xvi

■Chapter 1: Introducing the Android Computing Platform................................ 1

A New Platform for a New Personal Computer.......................................................................................................1

History of Android ...................................................................................................................................................3

Delving into the Dalvik VM ......................................................................................................................................5

Comparing Android and Java ME............................................................................................................................7

Understanding the Android Software Stack..........................................................................................................10

Developing an End-User Application with the Android SDK..................................................................................11

Android Emulator .............................................................................................................................................11

The Android UI .................................................................................................................................................12

The Android Foundational Components...........................................................................................................13

Advanced UI Concepts .....................................................................................................................................14

Android Service Components...........................................................................................................................16

Android Media and Telephony Components ....................................................................................................16

Android Java Packages....................................................................................................................................18

Taking Advantage of Android Source Code...........................................................................................................23

Summary ..............................................................................................................................................................24

■Chapter 2: Getting Your Feet Wet .................................................................. 25

Setting Up Your Environment................................................................................................................................25

Downloading JDK 6..........................................................................................................................................26

Downloading Eclipse 3.5..................................................................................................................................26

Downloading the Android SDK.........................................................................................................................27

■ CONTENTS

vi

Installing Android Development Tools (ADT)....................................................................................................28

Learning the Fundamental Components...............................................................................................................31

View .................................................................................................................................................................31

Activity .............................................................................................................................................................31

Intent................................................................................................................................................................31

Content Provider ..............................................................................................................................................32

Service.............................................................................................................................................................32

AndroidManifest.xml........................................................................................................................................32

Android Virtual Devices....................................................................................................................................32

Hello World! ..........................................................................................................................................................33

Android Virtual Devices.........................................................................................................................................38

Exploring the Structure of an Android Application................................................................................................40

Analyzing the Notepad Application .......................................................................................................................42

Loading and Running the Notepad Application................................................................................................43

Dissecting the Application ...............................................................................................................................44

Examining the Application Lifecycle .....................................................................................................................51

Debugging Your App .............................................................................................................................................54

Summary ..............................................................................................................................................................55

■Chapter 3: Using Resources, Content Providers, and Intents........................ 57

Understanding Resources.....................................................................................................................................58

String Resources..............................................................................................................................................59

Layout Resources ............................................................................................................................................60

Resource-Reference Syntax ............................................................................................................................62

Defining Your Own Resource IDs for Later Use................................................................................................63

Compiled and Noncompiled Android Resources..............................................................................................64

Enumerating Key Android Resources...............................................................................................................65

Working with Arbitrary XML Resource Files ....................................................................................................73

Working with Raw Resources..........................................................................................................................74

Working with Assets ........................................................................................................................................75

Reviewing the Resources Directory Structure .................................................................................................75

Understanding Content Providers .........................................................................................................................76

Exploring Android’s Built-in Providers .............................................................................................................77

Architecture of Content Providers....................................................................................................................83

Implementing Content Providers .....................................................................................................................95

Understanding Intents.........................................................................................................................................106

Available Intents in Android ...........................................................................................................................107

Intents and Data URIs ....................................................................................................................................109

Generic Actions..............................................................................................................................................110

Using Extra Information .................................................................................................................................111

Using Components to Directly Invoke an Activity ..........................................................................................113

Best Practice for Component Designers ........................................................................................................114

Understanding Intent Categories ...................................................................................................................114

The Rules for Resolving Intents to Their Components ...................................................................................117

Exercising the ACTION_PICK..........................................................................................................................117

Exercising the GET_CONTENT Action.............................................................................................................119

Further Resources for This Chapter....................................................................................................................121

Summary ............................................................................................................................................................121

■ CONTENTS

vii

■Chapter 4: Building User Interfaces and Using Controls ............................. 123

UI Development in Android .................................................................................................................................123

Understanding Android’s Common Controls .......................................................................................................129

Text Controls..................................................................................................................................................129

Button Controls ..............................................................................................................................................133

List Controls...................................................................................................................................................139

Grid Controls ..................................................................................................................................................143

Date and Time Controls .................................................................................................................................145

Other Interesting Controls in Android..................................................................................................................147

The MapView Control.....................................................................................................................................148

The Gallery Control.........................................................................................................................................148

The Spinner Control .......................................................................................................................................148

Understanding Layout Managers ........................................................................................................................149

The LinearLayout Layout Manager.................................................................................................................149

The TableLayout Layout Manager..................................................................................................................153

The RelativeLayout Layout Manager..............................................................................................................157

The FrameLayout Layout Manager ................................................................................................................159

Customizing Layout for Various Device Configurations .................................................................................162

Understanding Adapters .....................................................................................................................................164

Getting to Know SimpleCursorAdapter ..........................................................................................................165

Getting to Know ArrayAdapter .......................................................................................................................165

Creating Custom Adapters .............................................................................................................................166

Debugging and Optimizing Layouts with the Hierarchy Viewer..........................................................................167

Summary ............................................................................................................................................................170

■Chapter 5: Working with Menus and Dialogs .............................................. 171

Understanding Android Menus ...........................................................................................................................171

Creating a Menu.............................................................................................................................................173

Working with Menu Groups ...........................................................................................................................174

Responding to Menu Items ............................................................................................................................175

Creating a Test Harness for Testing Menus...................................................................................................176

Working with Other Menu Types.........................................................................................................................183

Expanded Menus ...........................................................................................................................................183

Working with Icon Menus ..............................................................................................................................183

Working with Submenus................................................................................................................................184

Provisioning for System Menus .....................................................................................................................185

Working with Context Menus.........................................................................................................................185

Working with Alternative Menus....................................................................................................................188

Working with Menus in Response to Changing Data .....................................................................................192

Loading Menus Through XML Files.....................................................................................................................192

Structure of an XML Menu Resource File ......................................................................................................193

Inflating XML Menu Resource Files ...............................................................................................................193

Responding to XML-Based Menu Items.........................................................................................................194

A Brief Introduction to Additional XML Menu Tags ........................................................................................195

Using Dialogs in Android.....................................................................................................................................196

Designing an Alert Dialog ..............................................................................................................................197

Designing a Prompt Dialog ............................................................................................................................199

The Nature of Dialogs in Android ...................................................................................................................204

■ CONTENTS

viii

Rearchitecting the Prompt Dialog..................................................................................................................205

Working with Managed Dialogs ..........................................................................................................................206

Understanding the Managed-Dialog Protocol ................................................................................................206

Recasting the Non-Managed Dialog As a Managed Dialog............................................................................206

Simplifying the Managed-Dialog Protocol .....................................................................................................208

Summary ............................................................................................................................................................215

■Chapter 6: Unveiling 2D Animation.............................................................. 217

Frame-by-Frame Animation................................................................................................................................218

Planning for Frame-by-Frame Animation ......................................................................................................218

Creating the Activity.......................................................................................................................................219

Adding Animation to the Activity....................................................................................................................220

Layout Animation ................................................................................................................................................223

Basic Tweening Animation Types ..................................................................................................................224

Planning the Layout-Animation Test Harness................................................................................................225

Creating the Activity and the ListView ...........................................................................................................226

Animating the ListView ..................................................................................................................................228

Using Interpolators.........................................................................................................................................231

View Animation...................................................................................................................................................233

Understanding View Animation......................................................................................................................233

Adding Animation...........................................................................................................................................236

Using Camera to Provide Depth Perception in 2D..........................................................................................239

Exploring the AnimationListener Class ..........................................................................................................240

Some Notes on Transformation Matrices ......................................................................................................241

Summary ............................................................................................................................................................242

■Chapter 7: Exploring Security and Location-Based Services ...................... 243

Understanding the Android Security Model ........................................................................................................243

Overview of Security Concepts......................................................................................................................244

Signing Applications for Deployment.............................................................................................................244

Performing Runtime Security Checks.................................................................................................................249

Understanding Security at the Process Boundary .........................................................................................249

Declaring and Using Permissions ..................................................................................................................250

Understanding and Using Custom Permissions .............................................................................................252

Understanding and Using URI Permissions....................................................................................................258

Working with Location-Based Services ..............................................................................................................258

Understanding the Mapping Package............................................................................................................259

Understanding the Location Package ............................................................................................................270

Summary ............................................................................................................................................................287

■Chapter 8: Building and Consuming Services ............................................. 289

Consuming HTTP Services ..................................................................................................................................289

Using the HttpClient for HTTP GET Requests .................................................................................................290

Using the HttpClient for HTTP POST Requests ...............................................................................................291

Dealing with Exceptions.................................................................................................................................295

Addressing Multithreading Issues .................................................................................................................297

Doing Interprocess Communication....................................................................................................................301

Creating a Simple Service..............................................................................................................................301

Understanding Services in Android................................................................................................................302

Understanding Local Services .......................................................................................................................303

■ CONTENTS

ix

Understanding AIDL Services.........................................................................................................................307

Defining a Service Interface in AIDL ..............................................................................................................308

Implementing an AIDL Interface ....................................................................................................................310

Calling the Service from a Client Application.................................................................................................312

Passing Complex Types to Services ..............................................................................................................316

Summary ............................................................................................................................................................326

■Chapter 9: Using the Media Framework and Telephony APIs ..................... 327

Using the Media APIs ..........................................................................................................................................327

Playing Audio Content....................................................................................................................................331

Understanding the setDataSource Method ....................................................................................................335

Playing Video Content ....................................................................................................................................336

Understanding the MediaPlayer Oddities.......................................................................................................338

Exploring Audio Recording.............................................................................................................................339

Exploring Video Recording.............................................................................................................................343

Exploring the MediaStore Class .....................................................................................................................348

Adding Media Content to the Media Store .....................................................................................................352

Using the Telephony APIs ...................................................................................................................................354

Working with SMS .........................................................................................................................................354

Working with the Telephony Manager ...........................................................................................................361

Summary ............................................................................................................................................................362

■Chapter 10: Programming 3D Graphics with OpenGL.................................. 363

Understanding the History and Background of OpenGL......................................................................................364

OpenGL ES .....................................................................................................................................................365

OpenGL ES and Java ME................................................................................................................................366

M3G: Another Java ME 3D Graphics Standard...............................................................................................367

Fundamentals of OpenGL....................................................................................................................................367

Essential Drawing with OpenGL ES................................................................................................................368

Understanding OpenGL Camera and Coordinates..........................................................................................374

Interfacing OpenGL ES with Android...................................................................................................................378

Using GLSurfaceView and Related Classes ...................................................................................................379

Simple Test Harness That Draws a Triangle..................................................................................................380

Changing Camera Settings ............................................................................................................................384

Using Indices to Add Another Triangle...........................................................................................................386

Animating the Simple OpenGL Triangle .........................................................................................................387

Braving OpenGL: Shapes and Textures...............................................................................................................390

A Simple Menu Trick for Your Demos ............................................................................................................391

Drawing a Rectangle......................................................................................................................................395

Working with Shapes.....................................................................................................................................397

Working with Textures...................................................................................................................................410

Drawing Multiple Figures...............................................................................................................................415

OpenGL Resources.........................................................................................................................................419

Summary ............................................................................................................................................................419

■Chapter 11: Managing and Organizing Preferences.................................... 421

Exploring the Preferences Framework ...............................................................................................................421

Understanding ListPreference .......................................................................................................................422

Manipulating Preferences Programmatically.................................................................................................429

Understanding CheckBoxPreference .............................................................................................................430

■ CONTENTS

x

Understanding EditTextPreference ................................................................................................................432

Understanding RingtonePreference...............................................................................................................433

Organizing Preferences ......................................................................................................................................435

Summary ............................................................................................................................................................438

■Chapter 12: Exploring Live Folders.............................................................. 439

Exploring Live Folders.........................................................................................................................................439

How a User Experiences Live Folders............................................................................................................440

Building a Live Folder ....................................................................................................................................445

Summary ............................................................................................................................................................456

■Chapter 13: Home Screen Widgets .............................................................. 457

Architecture of Home Screen Widgets................................................................................................................458

What Are Home Screen Widgets?..................................................................................................................458

User Experience with Home Screen Widgets.................................................................................................459

Lifecycle of a Widget......................................................................................................................................462

A Sample Widget Application..............................................................................................................................468

Defining the Widget Provider .........................................................................................................................470

Defining Widget Size......................................................................................................................................471

Widget Layout-Related Files ..........................................................................................................................472

Implementing a Widget Provider....................................................................................................................474

Implementing Widget Models ........................................................................................................................476

Implementing Widget Configuration Activity..................................................................................................483

Widget Limitations and Extensions.....................................................................................................................487

Resources ...........................................................................................................................................................488

Summary ............................................................................................................................................................489

■Chapter 14: Android Search ........................................................................ 491

Android Search Experience.................................................................................................................................492

Exploring Android Global Search ...................................................................................................................492

Enabling Suggestion Providers for Global Search..........................................................................................497

QSB and Suggestions Provider Interaction ....................................................................................................500

Activities and Search Key Interaction .................................................................................................................502

Behavior of Search Key on a Regular Activity................................................................................................503

Behavior of an Activity That Disables Search ................................................................................................510

Invoking Search Through a Menu ..................................................................................................................511

Understanding Local Search and Related Activities ......................................................................................514

Enabling Type-to-Search ...............................................................................................................................519

Implementing a Simple Suggestion Provider......................................................................................................520

Planning the Simple Suggestions Provider....................................................................................................520

Simple Suggestions Provider Implementation Files ......................................................................................521

Implementing the SimpleSuggestionProvider class ......................................................................................521

Understanding Simple Suggestions Provider Search Activity........................................................................525

Search Invoker Activity ..................................................................................................................................529

Simple Suggestion Provider User Experience................................................................................................531

Implementing a Custom Suggestion Provider.....................................................................................................535

Planning the Custom Suggestion Provider.....................................................................................................535

SuggestURLProvider Project Implementation Files........................................................................................536

Implementing the SuggestUrlProvider Class .................................................................................................536

Implementing a Search Activity for a Custom Suggestion Provider ..............................................................545

■ CONTENTS

xi

Custom Suggestions Provider Manifest File ..................................................................................................551

Custom Suggestion User Experience.............................................................................................................552

Using Action Keys and Application-Specific Search Data...................................................................................556

Using Action Keys in Android Search.............................................................................................................557

Working with Application-Specific Search Context .......................................................................................559

Resources ...........................................................................................................................................................561

Summary ............................................................................................................................................................562

■Chapter 15: Exploring Text to Speech and Translate APIs .......................... 563

The Basics of Text to Speech in Android ............................................................................................................563

Using Utterances to Keep Track of Our Speech..................................................................................................568

Using Audio Files for Your Voice .........................................................................................................................569

Advanced Features of the TTS Engine ................................................................................................................576

Setting Audio Streams ...................................................................................................................................576

Using Earcons ................................................................................................................................................577

Playing Silence ..............................................................................................................................................577

Using Language Methods ..............................................................................................................................578

Translating Text to a Different Language............................................................................................................579

Summary ............................................................................................................................................................588

■Chapter 16: Touchscreens........................................................................... 591

Understanding MotionEvents..............................................................................................................................591

Using VelocityTracker ....................................................................................................................................603

Exploring Drag and Drop................................................................................................................................605

Multi-Touch.........................................................................................................................................................608

Touches with Maps.............................................................................................................................................615

Gestures..............................................................................................................................................................618

Summary ............................................................................................................................................................625

■Chapter 17: Titanium Mobile: A WebKit-Based Approach

to Android Development .......................................................... 627

Titanium Mobile Overview ..................................................................................................................................628

Architecture ...................................................................................................................................................629

The Titanium Ecosystem................................................................................................................................632

Downloading and Installing Titanium Developer ...........................................................................................633

Getting to Know the Ropes: The First Project .....................................................................................................640

Creating a Titanium Mobile Project................................................................................................................640

Crafting “Hello World” ...................................................................................................................................642

Provisioning the Application for Debugging...................................................................................................644

Packaging the Application .............................................................................................................................647

Installing the .apk File on Your Own Emulator...............................................................................................649

Planning for Real-World Applications .................................................................................................................650

Essential Primer on JQuery............................................................................................................................651

Essential Primer on Advanced JavaScript .....................................................................................................653

Understanding the Microtemplating Engine ..................................................................................................656

Additional Titanium Mobile APIs ....................................................................................................................659

Summary ............................................................................................................................................................660

■Chapter 18: Working with Android Market.................................................. 661

Becoming a Publisher.........................................................................................................................................661

Following the Rules .......................................................................................................................................662

■ CONTENTS

xii

Developer Console .........................................................................................................................................665

Preparing Your Application for Sale....................................................................................................................666

Testing for Different Devices .........................................................................................................................666

Supporting Different Screen Sizes.................................................................................................................666

Preparing AndroidManifest.xml for Uploading...............................................................................................667

Localizing Your Application............................................................................................................................667

Preparing Your Application Icon.....................................................................................................................668

Considerations for Paid Apps.........................................................................................................................668

Directing Users Back to the Market...............................................................................................................669

Preparing Your .apk File for Uploading ..........................................................................................................669

Uploading Your Application.................................................................................................................................670

User Experience on Android Market ...................................................................................................................672

Summary ............................................................................................................................................................674

■Chapter 19: Outlook and Resources ............................................................ 675

Current State of Android .....................................................................................................................................675

Android Based Mobile Device Manufacturers................................................................................................676

Android Application Stores ............................................................................................................................677

Outlook For Android ............................................................................................................................................679

Quick Summary of Mobile Operating Systems ..............................................................................................679

Contrasting Android with other Mobile OSs...................................................................................................681

Support for HTML 5 and What it Reveals .......................................................................................................682

Android Resources..............................................................................................................................................683

Core Android Resources ................................................................................................................................683

Android News Related Resources..................................................................................................................684

Summary ............................................................................................................................................................685

■Index............................................................................................................ 687

xiii

About the Authors

Sayed Y. Hashimi was born in Afghanistan and now resides in Jacksonville,

Florida. His expertise spans the fields of health care, financials, logistics, and

service-oriented architecture. In his professional career, Sayed has developed

large-scale distributed applications with a variety of programming languages

and platforms, including C/C++, MFC, J2EE, and .NET. He has published

articles in major software journals and has written several other popular

Apress titles. Sayed holds a master’s degree in engineering from the

University of Florida. You can reach Sayed by visiting www.sayedhashimi.com.

Satya Komatineni (www.satyakomatineni.com) has over 20 years of

programming experience working with small and large corporations. Satya

has published over 30 articles around web development using Java, .NET, and

database technologies. He is a frequent speaker at industry conferences on

innovative technologies and a regular contributor to the weblogs on java.net.

He is the author of AspireWeb (www.activeintellect.com/aspire), a

simplified open source tool for Java web development, and the creator of

Aspire Knowledge Central (www.knowledgefolders.com), an open source

personal Web OS with a focus on individual productivity and publishing.

Satya is also a contributing member to a number of Small Business

Innovation Research Programs (SBIR). He received a bachelor’s degree in Electrical Engineering

from Andhra University, Visakhapatnam, and a master’s degree in Electrical Engineering from

the Indian Institute of Technology, New Delhi.

Dave MacLean is a software engineer and architect currently living and

working in Jacksonville, Florida. Since 1980, he has programmed in many

languages, developing systems ranging from robot automation systems to

data warehousing, web self-service applications to EDI transaction

processors. Dave has worked for Sun Microsystems, IBM, Trimble

Navigation, General Motors, and several small companies. He graduated

from the University of Waterloo in Canada with a degree in Systems Design

Engineering. Please visit us at our website http://www.androidbook.com.

Tải ngay đi em, còn do dự, trời tối mất!