Android Wireless Application Development

Author:   Shane Conder ,  Lauren Darcey
Publisher:   Pearson Education (US)
Edition:   2nd edition
ISBN:  

9780321743015


Pages:   792
Publication Date:   29 December 2010
Replaced By:   9780321813831
Format:   Paperback
Availability:   In Print   Availability explained
Limited stock is available. It will be ordered for you and shipped pending supplier's limited stock.

Our Price $131.97 Quantity:  
Add to Cart

Share |

Android Wireless Application Development


Add your own review!

Overview

The start-to-finish guide to Android application development: massively updated for the newest SDKs and developer techniques!   This book delivers all the up-to-date information, tested code, and best practices you need to create and market successful mobile apps with the latest versions of Android. Drawing on their extensive experience with mobile and wireless development, Lauren Darcey and Shane Conder cover every step: concept, design, coding, testing, packaging, and delivery. The authors introduce the Android platform, explain the principles of effective Android application design, and present today’s best practices for crafting effective user interfaces. Next, they offer detailed coverage of each key Android API, including data storage, networking, telephony, location-based services, multimedia, 3D graphics, and hardware.   Every chapter of this edition has been updated for the newest Android SDKs, tools, utilities, and hardware. All sample code has been overhauled and tested on leading devices from multiple companies, including HTC, Motorola, and ARCHOS. Many new examples have been added, including complete new applications. This new edition also adds   Nine new chapters covering web APIs, the Android NDK, extending application reach, managing users, data synchronization, backups, advanced user input, and more Greatly expanded coverage of Android manifest files, content providers, app design, and testing New coverage of hot topics like Bluetooth, gestures, voice recognition, App Widgets, live folders, live wallpapers, and global search Updated 3D graphics programming coverage reflecting OpenGL ES 2.0 An all-new chapter on tackling cross-device compatibility issues, from designing for the smallest phones to the big new tablets hitting the market Even more tips and tricks to help you design, develop, and test applications for different devices A new appendix full of Eclipse tips and tricks   This book is an indispensable resource for every member of the Android development team: software developers with all levels of mobile experience, team leaders and project managers, testers and QA specialists, software architects, and even marketers.

Full Product Details

Author:   Shane Conder ,  Lauren Darcey
Publisher:   Pearson Education (US)
Imprint:   Addison-Wesley Educational Publishers Inc
Edition:   2nd edition
Dimensions:   Width: 22.60cm , Height: 4.10cm , Length: 17.80cm
Weight:   1.208kg
ISBN:  

9780321743015


ISBN 10:   0321743016
Pages:   792
Publication Date:   29 December 2010
Audience:   Professional and scholarly ,  Professional & Vocational
Replaced By:   9780321813831
Format:   Paperback
Publisher's Status:   Out of Print
Availability:   In Print   Availability explained
Limited stock is available. It will be ordered for you and shipped pending supplier's limited stock.

Table of Contents

Introduction 1 Part I: An Overview of Android Chapter 1 Introducing Android 7 A Brief History of Mobile Software Development 7     Way Back When 7      “The Brick” 9     Wireless Application Protocol (WAP) 11     Proprietary Mobile Platforms 13 The Open Handset Alliance 15     Google Goes Wireless 15     Forming the Open Handset Alliance 15     Manufacturers: Designing the Android Handsets 16     Mobile Operators: Delivering the Android Experience 17     Content Providers: Developing Android Applications 17     Taking Advantage of All Android Has to Offer 18 Android Platform Differences 18     Android: A Next-Generation Platform 18     Free and Open Source 20     Familiar and Inexpensive Development Tools 20     Reasonable Learning Curve for Developers 20     Enabling Development of Powerful Applications 21     Rich, Secure Application Integration 21     No Costly Obstacles to Publication 21     A “Free Market” for Applications 22     A New and Growing Platform 22 The Android Platform 23     Android’s Underlying Architecture 23     Security and Permissions 25     Developing Android Applications 26 Summary 28 References and More Information 28 Chapter 2 Setting Up Your Android Development Environment 29 Configuring Your Development Environment 29     Configuring Your Operating System for Device Debugging 30     Configuring Your Android Hardware for Debugging 30     Upgrading the Android SDK 31     Problems with the Android Software Development Kit 32 Exploring the Android SDK 32     Understanding the Android SDK License Agreement 32     Reading the Android SDK Documentation 33     Exploring the Android Application Framework 35     Getting to Know the Android Tools 35     Exploring the Android Sample Applications 40 Summary 41 References and More Information 41 Chapter 3 Writing Your First Android Application 43 Testing Your Development Environment 43     Adding the Snake Application to a Project in Your Eclipse Workspace 43     Creating an Android Virtual Device (AVD) for Your Snake Project 44     Creating a Launch Configuration for Your Snake Project 46     Running the Snake Application in the Android Emulator 47 Building Your First Android Application 48     Creating and Configuring a New Android Project 50     Core Files and Directories of the Android Application 50     Creating an AVD for Your Project 51     Creating Launch Configurations for Your Project 52     Running Your Android Application in the Emulator 53     Debugging Your Android Application in the Emulator 56     Adding Logging Support to Your Android Application 59     Adding Some Media Support to Your Application 60     Adding Location-Based Services to Your Application 62     Debugging Your Application on the Hardware 65 Summary 66 References and More Information 67 Part II: Android Application Design Essentials Chapter 4 Understanding the Anatomy of an Android Application 69 Mastering Important Android Terminology 69 Using the Application Context 70     Retrieving the Application Context 70     Using the Application Context 70 Performing Application Tasks with Activities 71     The Lifecycle of an Android Activity 72     Managing Activity Transitions with Intents 76 Working with Services 78 Receiving and Broadcasting Intents 79 Summary 80 References and More Information 80 Chapter 5 Defining Your Application Using the Android Manifest File 81 Configuring the Android Manifest File 81     Editing the Android Manifest File 82 Managing Your Application’s Identity 86     Versioning Your Application 86     Setting the Application Name and Icon 87 Enforcing Application System Requirements 87     Targeting Specific SDK Versions 87     Enforcing Application Platform Requirements 90     Working with External Libraries 92 Registering Activities and Other Application Components 92     Designating a Primary Entry Point Activity for Your Application Using an Intent Filter 92     Configuring Other Intent Filters 93 Working with Permissions 94     Registering Permissions Your Application Requires 94     Registering Permissions Your Application Grants to Other Applications 95 Exploring Other Manifest File Settings 96 Summary 96 References and More Information 96 Chapter 6 Managing Application Resources 97 What Are Resources? 97     Storing Application Resources 97     Understanding the Resource Directory Hierarchy 97     Resource Value Types 99     Storing Different Resource Value Types 101     Accessing Resources Programmatically 103 Setting Simple Resource Values Using Eclipse 104 Working with Resources 107     Working with String Resources 107     Using String Resources as Format Strings 108     Working with String Arrays 109     Working with Boolean Resources 110     Working with Integer Resources 111     Working with Colors 111     Working with Dimensions 112     Working with Simple Drawables 113     Working with Images 114     Working with Animation 116     Working with Menus 119     Working with XML Files 120     Working with Raw Files 121     References to Resources 122     Working with Layouts 123     Working with Styles 127     Working with Themes 131 Referencing System Resources 131 Summary 132 References and More Information 132 Part III: Android User Interface Design Essentials Chapter 7 Exploring User Interface Screen Elements 133 Introducing Android Views and Layouts 133     Introducing the Android View 133     Introducing the Android Control 133     Introducing the Android Layout 134 Displaying Text to Users with TextView 134     Configuring Layout and Sizing 135     Creating Contextual Links in Text 136 Retrieving Data from Users 137     Retrieving Text Input Using EditText Controls 138     Giving Users Input Choices Using Spinner Controls 142 Using Buttons, Check Boxes, and Radio Groups 144     Using Basic Buttons 144     Using Check Boxes and Toggle Buttons 146     Using RadioGroups and RadioButtons 147 Getting Dates and Times from Users 150 Using Indicators to Display Data to Users 151     Indicating Progress with ProgressBar 151 Adjusting Progress with SeekBar 153     Displaying Rating Data with RatingBar 154     Showing Time Passage with the Chronometer 155     Displaying the Time 156 Providing Users with Options and Context Menus 157     Enabling the Options Menu 157     Enabling the ContextMenu 159 Handling User Events 161     Listening for Touch Mode Changes 161     Listening for Events on the Entire Screen 162     Listening for Long Clicks 163     Listening for Focus Changes 164 Working with Dialogs 165     Exploring the Different Types of Dialogs 165     Tracing the Lifecycle of a Dialog 166     Working with Custom Dialogs 168 Working with Styles 168 Working with Themes 170 Summary 171 Chapter 8 Designing User Interfaces with Layouts 173 Creating User Interfaces in Android 173     Creating Layouts Using XML Resources 173     Creating Layouts Programmatically 175 Organizing Your User Interface 177     Understanding View versus ViewGroup 178 Using Built-In Layout Classes 181     Using FrameLayout 183     Using LinearLayout 185     Using RelativeLayout 186     Using TableLayout 190     Using Multiple Layouts on a Screen 192 Using Built-In View Container Classes 192     Using Data-Driven Containers 194     Organizing Screens with Tabs 198     Adding Scrolling Support 201     Exploring Other View Containers 202 Summary 203 Chapter 9 Drawing and Working with Animation 205 Drawing on the Screen 205     Working with Canvases and Paints 205 Working with Text 210     Using Default Fonts and Typefaces 210     Using Custom Typefaces 211     Measuring Text Screen Requirements 212 Working with Bitmaps 212     Drawing Bitmap Graphics on a Canvas 213     Scaling Bitmap Graphics 213     Transforming Bitmaps Using Matrixes 213 Working with Shapes 214     Defining Shape Drawables as XML Resources 214     Defining Shape Drawables Programmatically 215     Drawing Different Shapes 215 Working with Animation 221     Working with Frame-by-Frame Animation 223     Working with Tweened Animations 224 Summary 230 Part IV: Using Common Android APIs Chapter 10 Using Android Data and Storage APIs 231 Working with Application Preferences 231     Creating Private and Shared Preferences 232     Searching and Reading Preferences 232     Adding, Updating, and Deleting Preferences 233     Finding Preferences Data on the Android File System 234 Working with Files and Directories 235     Exploring with the Android Application Directories 235     Working with Other Directories and Files on the Android File System 238 Storing Structured Data Using SQLite Databases 239     Creating a SQLite Database 240     Creating, Updating, and Deleting Database Records 242     Querying SQLite Databases 244     Closing and Deleting a SQLite Database 250     Designing Persistent Databases 250     Binding Data to the Application User Interface 253 Summary 257 References and More Information 258 Chapter 11 Sharing Data Between Applications with Content Providers 259 Exploring Android’s Content Providers 259     Using the MediaStore Content Provider 260     Using the CallLog Content Provider 261     Using the Browser Content Provider 263     Using the Contacts Content Provider 264     Using the UserDictionary Content Provider 267     Using the Settings Content Provider 267 Modifying Content Providers Data 267     Adding Records 267     Updating Records 268     Deleting Records 269 Enhancing Applications Using Content Providers 269     Accessing Images on the Device 270 Acting as a Content Provider 274     Implementing a Content Provider Interface 275     Defining the Data URI 276     Defining Data Columns 276     Implementing Important Content Provider Methods 276     Updating the Manifest File 282 Working with Live Folders 282 Summary 285 References and More Information 285 Chapter 12 Using Android Networking APIs 287 Understanding Mobile Networking Fundamentals 287 Accessing the Internet (HTTP) 288     Reading Data from the Web 288     Using HttpURLConnection 289     Parsing XML from the Network 290     Processing Asynchronously 291     Working with AsyncTask 292     Using Threads for Network Calls 293     Displaying Images from a Network Resource 295     Retrieving Android Network Status 297 Summary 298 References and More Information 299 Chapter 13 Using Android Web APIs 301 Browsing the Web with WebView 301     Designing a Layout with a WebView Control 302     Loading Content into a WebView Control 302     Adding Features to the WebView Control 304 Building Web Extensions Using WebKit 307     Browsing the WebKit APIs 307     Extending Web Application Functionality to Android 308 Working with Flash 311     Enabling Flash Applications 312     Building AIR Applications for Android 313 Summary 314 References and More Information 314 Chapter 14 Using Location-Based Services (LBS) APIs 315 Using Global Positioning Services (GPS) 315     Using GPS Features in Your Applications 316     Finding Your Location 316     Locating Your Emulator 318 Geocoding Locations 318 Mapping Locations 322     Mapping Intents 322     Mapping Views 322     Getting Your Debug API Key 325     Panning the Map View 326     Zooming the Map View 327     Marking the Spot 327 Doing More with Location-Based Services 332 Summary 333 References and More Information 333 Chapter 15 Using Android Multimedia APIs 335 Working with Multimedia 335 Working with Still Images 336     Capturing Still Images Using the Camera 336     Configuring Camera Mode Settings 340     Sharing Images 341     Assigning Images as Wallpapers 342 Working with Video 343     Recording Video 343     Playing Video 345 Working with Audio 346     Recording Audio 347     Playing Audio 348     Sharing Audio 349     Searching for Multimedia 350     Working with Ringtones 351 Summary 351 References and More Information 351 Chapter 16 Using Android Telephony APIs 353 Working with Telephony Utilities 353     Gaining Permission to Access Phone State Information 354     Requesting Call State 354     Requesting Service Information 356     Monitoring Signal Strength and Data Connection Speed 356     Working with Phone Numbers 357 Using SMS 357     Gaining Permission to Send and Receive SMS Messages 358     Sending an SMS 358     Receiving an SMS 360 Making and Receiving Phone Calls 362     Making Phone Calls 362     Receiving Phone Calls 364 Summary 365 References and More Information 365 Chapter 17 Using Android 3D Graphics with OpenGL ES 367 Working with OpenGL ES 367     Leveraging OpenGL ES in Android 368     Ensuring Device Compatibility 368 Using OpenGL ES APIs in the Android SDK 369 Handling OpenGL ES Tasks Manually 369     Creating a SurfaceView 370     Starting Your OpenGL ES Thread 371     Initializing EGL 373     Initializing GL 374     Drawing on the Screen 375 Drawing 3D Objects 376     Drawing Your Vertices 376     Coloring Your Vertices 377     Drawing More Complex Objects 378     Lighting Your Scene 379     Texturing Your Objects 381 Interacting with Android Views and Events 383     Enabling the OpenGL Thread to Talk to the Application Thread 384     Enabling the Application Thread to Talk to the OpenGL Thread 386 Cleaning Up OpenGL ES 387 Using GLSurfaceView (Easy OpenGL ES) 388 Using OpenGL ES 2.0 391     Configuring Your Application for OpenGL ES 2.0 391     Requesting an OpenGL ES 2.0 Surface 391 Summary 395 References and More Information 396 Chapter 18 Using the Android NDK 397 Determining When to Use the Android NDK 397 Installing the Android NDK 398 Exploring the Android NDK 398     Running an Android NDK Sample Application 399 Creating Your Own NDK Project 399     Calling Native Code from Java 400     Handling Parameters and Return Values 401     Using Exceptions with Native Code 402 Improving Graphics Performance 403 Summary 405 References and More Information 405 Chapter 19 Using Android’s Optional Hardware APIs 407 Interacting with Device Hardware 407 Using the Device Sensor 408     Working with Different Sensors 408     Acquiring Access to a Sensor 409     Reading Sensor Data 409     Calibrating Sensors 410     Determining Device Orientation 411     Finding True North 412 Working with Wi-Fi 412 Working with Bluetooth 414     Checking for the Existence of Bluetooth Hardware 415     Enabling Bluetooth 415     Querying for Paired Devices 416     Discovering Devices 416     Establishing Connections Between Devices 416 Monitoring the Battery 417 Summary 420 References and More Information 421 Part V: More Android Application Design Principles Chapter 20 Working with Notifications 423 Notifying the User 423 Notifying with the Status Bar 424     Using the NotificationManager Service 425     Creating a Simple Text Notification with an Icon 425     Working with the Notification Queue 426     Updating Notifications 427     Clearing Notifications 428 Vibrating the Phone 429 Blinking the Lights 430 Making Noise 431 Customizing the Notification 432 Designing Useful Notifications 434 Summary 434 References and More Information 435 Chapter 21 Working with Services 437 Determining When to Use Services 437 Understanding the Service Lifecycle 438 Creating a Service 438 Controlling a Service 443 Implementing a Remote Interface 444 Implementing a Parcelable Class 446 Summary 449 References and More Information 449 Chapter 22 Extending Android Application Reach 451 Enhancing Your Applications 451 Working with App Widgets 452     Creating an App Widget 453     Installing an App Widget 460     Becoming an App Widget Host 460 Working with Live Wallpapers 461     Creating a Live Wallpaper 462     Installing a Live Wallpaper 465 Acting as a Content Type Handler 466 Determining Intent Actions and MIME Types 467     Implementing the Activity to Process the Intents 468     Registering the Intent Filter 469 Making Application Content Searchable 469     Enabling Searches Within Your Application 470     Enabling Global Search 478 Working with Live Folders 480     Creating Live Folders 481     Installing a Live Folder 485 Summary 487 References and More Information 487 Chapter 23 Managing User Accounts and Synchronizing User Data 489 Managing Accounts with the Account Manager 489     Synchronizing Data with Sync Adapters 490 Using Backup Services 491     Choosing a Remote Backup Service 492     Implementing a Backup Agent 492     Backing Up and Restoring Application Data 496 Summary 497 References and More Information 497 Chapter 24 Handling Advanced User Input 499 Working with Textual Input Methods 499     Working with Software Keyboards 499     Working with Text Prediction and User Dictionaries 502 Exploring the Accessibility Framework 502     Leveraging Speech Recognition Services 503     Leveraging Text-To-Speech Services 506 Working with Gestures 508     Detecting User Motions Within a View 509 Handling Common Single-Touch Gestures 509     Handling Common Multi-Touch Gestures 516     Making Gestures Look Natural 518 Working with the Trackball 519 Handling Screen Orientation Changes 519 Summary 522 References and More Information 522 Chapter 25 Targeting Different Device Configurations and Languages 523 Maximizing Application Compatibility 523 Designing User Interfaces for Compatibility 525     Supporting Specific Screen Types 526     Working with Nine-Patch Stretchable Graphics 526     Using the Working Square Principle 528 Providing Alternative Application Resources 531     Working with Alternative Resource Qualifiers 531     Providing Resources for Different Orientations 537     Using Alternative Resources Programmatically 538     Organizing Application Resources Efficiently 538 Internationalizing Applications 539     Internationalization Using Alternative Resources 540     Implementing Locale Support Programmatically 544 Targeting Different Device Configurations 545     Supporting Hardware Configurations 545     Targeting Different Android SDK Versions 546 Summary 548 References and More Information 549 Part VI: Deploying Your Android Application to the World Chapter 26 The Mobile Software Development Process 551 An Overview of the Mobile Development Process 551 Choosing a Software Methodology 552     Understanding the Dangers of Waterfall Approaches 552     Understanding the Value of Iteration 553 Gathering Application Requirements 553     Determining Project Requirements 553     Developing Use Cases for Mobile Applications 555     Incorporating Third-Party Requirements 555     Managing a Device Database 555 Assessing Project Risks 558     Identifying Target Devices 558     Acquiring Target Devices 560     Determining Feasibility of Application Requirements 561     Understanding Quality Assurance Risks 561 Writing Essential Project Documentation 562     Developing Test Plans for Quality Assurance Purposes 562     Providing Documentation Required by Third Parties 563     Providing Documentation for Maintenance and Porting 563 Leveraging Configuration Management Systems 563     Choosing a Source Control System 563     Implementing an Application Version System That Works 564 Designing Mobile Applications 564     Understanding Mobile Device Limitations 564     Exploring Common Mobile Application Architectures 564     Designing for Extensibility and Maintenance 565     Designing for Application Interoperability 566 Developing Mobile Applications 567 Testing Mobile Applications 567 Deploying Mobile Applications 568     Determining Target Markets 568 Supporting and Maintaining Mobile Applications 568     Track and Address Crashes Reported by Users 569     Testing Firmware Upgrades 569     Maintaining Adequate Application Documentation 569     Managing Live Server Changes 569     Identifying Low-Risk Porting Opportunities 569 Summary 570 References and More Information 570 Chapter 27 Designing and Developing Bulletproof Android Applications 571 Best Practices in Designing Bulletproof Mobile Applications 571     Meeting Mobile Users’ Demands 572     Designing User Interfaces for Mobile Devices 572     Designing Stable and Responsive Mobile Applications 573     Designing Secure Mobile Applications 574     Designing Mobile Applications for Maximum Profit 575     Leveraging Third-Party Standards for Android Application Design 576     Designing Mobile Applications for Ease of Maintenance and Upgrades 576     Leveraging Android Tools for Application Design 578 Avoiding Silly Mistakes in Android Application Design 578 Best Practices in Developing Bulletproof Mobile Applications 579     Designing a Development Process That Works for Mobile Development 579     Testing the Feasibility of Your Application Early and Often 579     Using Coding Standards, Reviews, and Unit Tests to Improve Code Quality 580     Handling Defects Occurring on a Single Device 582     Leveraging Android Tools for Development 583     Avoiding Silly Mistakes in Android Application Development 583 Summary 583 References and More Information 584 Chapter 28 Testing Android Applications 585 Best Practices in Testing Mobile Applications 585     Designing a Mobile Application Defect Tracking System 585     Managing the Testing Environment 587     Maximizing Testing Coverage 589     Leveraging Android Tools for Android Application Testing 595     Avoiding Silly Mistakes in Android Application Testing 595     Outsourcing Testing Responsibilities 596 Summary 596 References and More Information 596 Chapter 29 Selling Your Android Application 597 Choosing the Right Distribution Model 597 Packaging Your Application for Publication 598     Preparing Your Code to Package 599     Packing and Signing Your Application 600     Testing the Release Version of Your     Application Package 603     Certifying Your Android Application 603 Distributing Your Applications 603     Selling Your Application on the Android Market 603     Selling Your Application on Your Own Server 609     Selling Your Application Using Other Alternatives 610     Protecting Your Intellectual Property 611     Billing the User 611 Summary 612 References and More Information 612 Part VII: Appendixes Appendix A The Android Emulator Quick-Start Guide 613 Simulating Reality: The Emulator’s Purpose 613 Working with Android Virtual Devices (AVDs) 615     Using the Android SDK and AVD Manager 616     Creating an AVD 616 Launching the Emulator with a Specific AVD 620     Configuring Emulator Startup Options 621     Launching an Emulator to Run an Application 621     Launching an Emulator from the Android SDK and AVD Manager 623 Configuring the GPS Location of the Emulator 623 Calling Between Two Emulator Instances 625 Messaging Between Two Emulator Instances 625 Interacting with the Emulator Through the Console 628     Using the Console to Simulate Incoming Calls 628     Using the Console to Simulate SMS Messages 629     Using the Console to Send GPS Coordinates 630     Using the Console to Monitor Network Status 631     Using the Console to Manipulate Power Settings 631     Using Other Console Commands 632 Enjoying the Emulator 632 Understanding Emulator Limitations 632 Appendix B The Android DDMS Quick-Start Guide 635 Using DDMS with Eclipse and as a Stand-Alone Application 635 Getting Up to Speed Using Key Features of DDMS 636 Working with Processes 637     Attaching a Debugger to an Android Application 638     Monitoring Thread Activity of an Android Application 638     Prompting Garbage Collection (GC) 639     Monitoring Heap Activity 639     Monitoring Memory Allocation 640     Stopping a Process 640 Working with the File Explorer 641     Browsing the File System of an Emulator or Device 641     Copying Files from the Emulator or Device 641     Copying Files to the Emulator or Device 642     Deleting Files on the Emulator or Device 642 Working with the Emulator Control 642     Simulating Incoming Voice Calls 643     Simulating Incoming SMS Messages 643     Sending a Location Fix 643 Working with Application Logging 644 Taking Screen Captures of Emulator and Device Screens 645 Appendix C The Android Debug Bridge Quick-Start Guide 647 Listing Connected Devices and Emulators 647 Directing ADB Commands to Specific Devices 648 Starting and Stopping the ADB Server 648     Stopping the ADB Server Process 648     Starting and Checking the ADB Server Process 648 Issuing Shell Commands 649     Issuing a Single Shell Command 649     Using a Shell Session 649     Using the Shell to Start and Stop the Emulator 649 Copying Files 650     Sending Files to a Device or Emulator 650     Retrieving Files from a Device or Emulator 650 Installing and Uninstalling Applications 651     Installing Applications 651     Reinstalling Applications 651     Uninstalling Applications 651 Working with LogCat Logging 652     Displaying All Log Information 652     Including Date and Time with Log Data 652     Filtering Log Information 652     Clearing the Log 654     Redirecting Log Output to a File 654     Accessing the Secondary Logs 654 Controlling the Backup Service 654     Forcing Backup Operations 655     Forcing Restore Operations 655     Wiping Archived Data 655 Generating Bug Reports 655 Using the Shell to Inspect SQLite Databases 656 Using the Shell to Stress Test Applications 656     Letting the Monkey Loose on Your Application 656     Listening to Your Monkey 656     Directing Your Monkey’s Actions 657     Training Your Monkey to Repeat His Tricks 658     Keeping the Monkey on a Leash 658     Learning More About Your Monkey 659 Installing Custom Binaries via the Shell 659 Exploring Other ADB Commands 660 Appendix D Eclipse IDE Tips and Tricks 661 Organizing Your Eclipse Workspace 661     Integrating with Source Control Services 661     Repositioning Tabs Within Perspectives 661     Maximizing Windows 662     Minimizing Windows 662     Viewing Windows Side by Side 662     Viewing Two Sections of the Same File 662     Closing Unwanted Tabs 662     Keeping Windows Under Control 663     Creating Custom Log Filters 663 Writing Code in Java 663     Using Auto-Complete 664     Formatting Code 664     Creating New Classes 664     Creating New Methods 664     Organizing Imports 664     Renaming Almost Anything 665     Refactoring Code 665     Reorganizing Code 667     Providing Javadoc-Style Documentation 667     Resolving Mysterious Build Errors 667 Appendix E The SQLite Quick-Start Guide 669 Exploring Common Tasks with SQLite 669 Using the sqlite3 Command-Line Interface 670     Launching the ADB Shell 670     Connecting to a SQLite Database 670     Exploring Your Database 671     Importing and Exporting the Database and Its Data 672     Executing SQL Commands on the Command Line 674     Using Other sqlite3 Commands 675     Understanding SQLite Limitations 675 Learning by Example: A Student Grade Database 675     Designing the Student Grade Database Schema 676     Creating Simple Tables with AUTOINCREMENT 676     Inserting Data into Tables 677     Querying Tables for Results with SELECT 677     Using Foreign Keys and Composite Primary Keys 678     Altering and Updating Data in Tables 679     Querying Multiple Tables Using JOIN 680     Using Calculated Columns 680     Using Subqueries for Calculated Columns 682     Deleting Tables 682     9780321743015   TOC   11/19/2010  

Reviews

New and experienced Android Engineers will learn to make their applications more extensive and polished through reading this book. The best part is that it is filled with top quality code samples that can not be found through any search of the internet. Shane Conder and Lauren Darcey have done an excellent job of building upon an already useful resource! - Matthew Patience, Mobicartel Inc


New and experienced Android Engineers will learn to make their applications more extensive and polished through reading this book. The best part is that it is filled with top quality code samples that can not be found through any search of the internet. Shane Conder and Lauren Darcey have done an excellent job of building upon an already useful resource! - Matthew Patience, Mobicartel Inc


Author Information

Lauren Darcey is responsible for the technical leadership and direction of a small software company specializing in mobile technologies, including Android, iPhone, Blackberry, Palm Pre,BREW, and J2ME and consulting services.With more than two decades of experience in professional software production, Lauren is a recognized authority in application architecture and the development of commercial-grade mobile applications. Lauren received a B.S. in Computer Science from the University of California, Santa Cruz.   She spends her copious free time traveling the world with her geeky mobile-minded husband and is an avid nature photographer. Her work has been published in books and newspapers around the world. In South Africa, she dove with 4-meter-long great white sharks and got stuck between a herd of rampaging hippopotami and an irritated bull elephant. She’s been attacked by monkeys in Japan, gotten stuck in a ravine with two hungry lions in Kenya, gotten thirsty in Egypt, narrowly avoided a coup d’état in Thailand, geocached her way through the Swiss Alps, drank her way through the beer halls of Germany, slept in the crumbling castles of Europe, and gotten her tongue stuck to an iceberg in Iceland (while being watched by a herd of suspicious wild reindeer).   Shane Conder has extensive development experience and has focused his attention on mobile and embedded development for the past decade. He has designed and developed many commercial applications for Android, iPhone,BREW, Blackberry, J2ME, Palm, and Windows Mobile—some of which have been installed on millions of phones worldwide. Shane has written extensively about the mobile industry and evaluated mobile development platforms on his tech blogs and is well known within the blogosphere. Shane received a B.S. in Computer Science from the University of California.   A self-admitted gadget freak, Shane always has the latest phone, laptop, or other mobile device.He can often be found fiddling with the latest technologies, such as cloud services and mobile platforms, and other exciting, state-of-the-art technologies that activate the creative part of his brain. He also enjoys traveling the world with his geeky wife, even if she did make him dive with 4-meter-long great white sharks and almost get eaten by a lion in Kenya. He admits that he has to take at least two phones with him when backpacking—even though there is no coverage—that he snickered and whipped out his Android phone to take a picture when Laurie got her tongue stuck to that iceberg in Iceland, and that he is catching on that he should be writing his own bio.

Tab Content 6

Author Website:  

Customer Reviews

Recent Reviews

No review item found!

Add your own review!

Countries Available

All regions
Latest Reading Guide

MRG2025CC

 

Shopping Cart
Your cart is empty
Shopping cart
Mailing List