Absolutely Australia's Lowest Prices

Shop over 1.5 Million Toys in our Huge New Range

Introduction to Android Application Development


Product Description
Product Details

Table of Contents

Acknowledgments xxxi About the Authors xxxiii Introduction 1 Part I: Platform Overview Chapter 1: Presenting Android 11

The Android Open Source Project (AOSP) 11

The Open Handset Alliance 12

Android Platform Uniqueness 16

The Android Platform 21

Android beyond the OHA and GMS 26

Summary 28

Quiz Questions 28

Exercises 28

References and More Information 29

Chapter 2: Setting Up for Development 31

Configuring Your Development Environment 31

Exploring the Android SDK 38

Summary 48

Quiz Questions 48

Exercises 48

References and More Information 48

Chapter 3: Creating Your First Application 51

Testing Your Development Environment 51

Building Your First Android Application 57

Summary 73

Quiz Questions 74

Exercises 74

References and More Information 74

Part II: Application Basics Chapter 4: Understanding Application Components 77

Mastering Important Android Terminology 77

The Application Context 78

Performing Application Tasks with Activities 80

Organizing Activity Components with Fragments 85

Managing Activity Transitions with Intents 87

Working with Services 90

Receiving and Broadcasting Intents 91

Summary 92

Quiz Questions 92

Exercises 93

References and More Information 93

Chapter 5: Defining the Manifest 95

Configuring Android Applications Using the Android Manifest File 95

Managing Your Application's Identity 99

Enforcing Application System Requirements 100

Registering Activities in the Android Manifest 103

Working with Permissions 105

Exploring Other Manifest File Settings 109

Summary 109

Quiz Questions 109

Exercises 110

References and More Information 110

Chapter 6: Managing Application Resources 111

What Are Resources? 111

Adding Simple Resource Values in Android Studio 116

Working with Different Types of Resources 120

Working with Layouts 140

Referencing System Resources 144

Summary 145

Quiz Questions 146

Exercises 146

References and More Information 146

Chapter 7: Exploring Building Blocks 147

Introducing Android Views and Layouts 147

Displaying Text to Users with TextView 148

Retrieving Data from Users with Text Fields 152

Giving Users Choices Using Spinner Controls 157

Allowing Simple User Selections with Buttons and Switches 159

Retrieving Dates, Times, and Numbers from Users with Pickers 166

Using Indicators to Display Progress and Activity to Users 168

Adjusting Progress with Seek Bars 171

Other Valuable User Interface Controls 173

Summary 177

Quiz Questions 177

Exercises 177

References and More Information 178

Chapter 8: Positioning with Layouts 179

Creating User Interfaces in Android 179

Organizing Your User Interface 184

Using Built-in Layout Classes 185

Using Container Control Classes 203

Summary 210

Quiz Questions 210

Exercises 211

References and More Information 211

Chapter 9: Partitioning with Fragments 213

Understanding Fragments 213

Using the Android Support Library Package 228

Additional Ways to Use Fragments 231

Summary 232

Quiz Questions 232

Exercises 233

References and More Information 233

Part III: Application Design Essentials Chapter 10: Architecting with Patterns 237

Architecting Your Application's Navigation 237

Encouraging Action 251

Summary 267

Quiz Questions 267

Exercises 267

References and More Information 268

Chapter 11: Appealing with Style 269

Styling with Support 269

Themes and Styles 269

Colors 272

Layout 273

Application Branding 278

The Results Applied 280

Typography 280

Summary 282

Quiz Questions 282

Exercises 283

References and More Information 283

Chapter 12: Embracing Material Design 285

Understanding Material 285

The Default Material Theme 286

The SampleMaterial Application 286

Implementing the SampleMaterial Application 286

Summary 317

Quiz Questions 317

Exercises 317

References and More Information 318

Chapter 13: Designing Compatible Applications 319

Maximizing Application Compatibility 319

Designing User Interfaces for Compatibility 321

Providing Alternative Application Resources 324

Targeting Tablets and TVs 336

Extending Your Application to Watches and Cars 338

Ensuring Compatibility with SafetyNet 339

Summary 340

Quiz Questions 340

Exercises 341

References and More Information 341

Part IV: Application Development Essentials Chapter 14: Using Android Preferences 345

Working with Application Preferences 345

Finding Preferences Data on the File System 349

Creating Manageable User Preferences 350

Auto Backup for Android Applications 359

Summary 361

Quiz Questions 361

Exercises 361

References and More Information 362

Chapter 15: Accessing Files and Directories 363

Working with Application Data on a Device 363

Practicing Good File Management 364

Understanding Android File Permissions 365

Working with Files and Directories 366

Summary 375

Quiz Questions 375

Exercises 375

References and More Information 376

Chapter 16: Saving with SQLite 377

SampleMaterial Upgraded with SQLite 377

Working with Databases 377

Summary 390

Quiz Questions 390

Exercises 391

References and More Information 391

Chapter 17: Leveraging Content Providers 393

Exploring Android's Content Providers 393

Modifying Content Provider Data 402

Using Third-Party Content Providers 406

Summary 406

Quiz Questions 406

Exercises 407

References and More Information 407

Part V: Application Delivery Essentials Chapter 18: Learning the Development Workflow 411

An Overview of the Android Development Process 411

Choosing a Software Methodology 412

Gathering Application Requirements 413

Assessing Project Risks 421

Writing Essential Project Documentation 425

Leveraging Configuration Management Systems 426

Designing Android Applications 427

Developing Android Applications 430

Testing Android Applications 431

Deploying Android Applications 432

Supporting and Maintaining Android Applications 433

Summary 434

Quiz Questions 435

Exercises 435

References and More Information 435

Chapter 19: Planning the Experience 437

Thinking about Objectives 437

Techniques for Focusing Your Product Efforts 439

Communicating Your Application's Identity 442

Designing Screen Layouts 443

Reacting Properly with Visual Feedback 444

Observing Target Users for Usability 445

Summary 446

Quiz Questions 446

Exercises 447

References and More Information 447

Chapter 20: Delivering Quality Applications 449

Best Practices in Delivering Quality Applications 449

Avoiding Silly Mistakes in Android Application Design 459

Best Practices in Delivering Quality Android Applications 459

Summary 464

Quiz Questions 465

Exercises 465

References and More Information 465

Chapter 21: Testing Your Applications 467

Best Practices in Testing Mobile Applications 467

Android Application Testing Essentials 479

More Android Automated Testing Programs and APIs 496

Summary 497

Quiz Questions 497

Exercises 498

References and More Information 498

Chapter 22: Distributing Your Applications 499

Choosing the Right Distribution Model 499

Packaging Your Application for Publication 502

Publishing to Google Play 509

Google Play Staged Rollouts 518

Publishing to the Google Play Private Channel 518

Translating Your Application 519

Publishing Using Other Alternatives 520

Self-Publishing Your Application 520

Summary 522

Quiz Questions 522

Exercises 522

References and More Information 523

Part VI: Appendixes Appendix A: Tips and Tricks: Android Studio 527

Organizing Your Android Studio Workspace 527

Writing Code in Java 533

Resolving Mysterious Build Errors 537

Summary 537

Quiz Questions 538

Exercises 538

References and More Information 538

Appendix B: Quick-Start: Android Emulator 539

Simulating Reality: The Emulator's Purpose 539

Working with Android Virtual Devices 541

Launching the Emulator with a Specific AVD 548

Configuring the GPS Location of the Emulator 555

Calling between Two Emulator Instances 557

Messaging between Two Emulator Instances 558

Interacting with the Emulator through the Console 559

Personalizing the Emulator 563

Understanding Emulator Limitations 563

Summary 565

Quiz Questions 565

Exercises 565

References and More Information 565

Appendix C: Quick-Start: Android Device Monitor 567

Using Device Monitor with Android Studio and as a Stand-Alone Application 567

Getting Up to Speed Using Key Features of Device Monitor 568

Working with Processes, Threads, and the Heap 569

Using the Allocation Tracker 573

Viewing Network Statistics 574

Working with the File Explorer 575

Working with the Emulator Control 578

Working with the System Information Pane 580

Taking Screen Captures of the Emulator and Device Screens 580

Working with Application Logging 581

Summary 582

Quiz Questions 583

Exercises 583

References and More Information 583

Appendix D: Mastery: Android SDK Tools 585

Using the Android Documentation 585

Leveraging the Android Emulator 588

Viewing Application Log Data with logcat 589

Debugging Applications with Device Monitor 590

Using Android Debug Bridge (ADB) 591

Using the Layout Editor 591

Using the Android Hierarchy Viewer 592

Working with Nine-Patch Stretchable Graphics 596

Working with Other Android Tools 597

Summary 600

Quiz Questions 600

Exercises 600

References and More Information 601

Appendix E: Quick-Start: Gradle Build System 603

Gradle Build Files 603

Using Android Studio to Configure Your Builds 609

Summary 620

Quiz Questions 620

Exercises 621

References and More Information 621

Appendix F: Answers to Quiz Questions 623 Index 631

About the Author

Joseph Annuzzi, Jr. is a code warrior, graphic artist, entrepreneur, and author. He usually can be found mastering the Android platform; implementing cutting-edge HTML5 capabilities; leveraging various cloud technologies; speaking in different programming languages; working with diverse frameworks; integrating with various APIs; tinkering with peer-to-peer, cryptography, and biometric algorithms; or creating stunningly realistic 3D renders. He is always on the lookout for disruptive Internet and mobile technologies. He graduated from the University of California, Davis, with a BS in managerial economics and a minor in computer science, and lives where much of the action is, Silicon Valley. When he is not working with technology, he has been known to lounge in the sun on the beaches of the Black Sea with international movie stars; he has trekked through the Bavarian forest in winter, has immersed himself in the culture of the Italian Mediterranean, and has narrowly escaped the wrath of an organized crime ring in Eastern Europe after his taxi dropped him off in front of the bank ATM they were liquidating. He also lives an active and healthy lifestyle, designs and performs custom fitness training routines to stay in shape, and adores his loyal beagle, Cleopatra.


Praise for Introduction to Android (TM) Application Development, Fifth Edition

"Introduction to Android Application Development is a great resource for developers who want to understand Android app development but who have little or no experience with mobile software. This fifth edition has a bunch of great changes, from using Android Studio to understanding and implementing navigation patterns, and each chapter has quiz questions to help make sure you're picking up the vital info that fills this book."

-Ian G. Clifton, author of Android User Interface Design

"Revamped, revitalized, and refreshed! Introduction to Android Application Development, Fifth Edition, is a wonderful upgrade to an already impressive compendium. Common pitfalls are explained, new features are covered in depth, and the knowledge that the book is geared to cover everything from introduction of a concept to learning how to implement it into your app makes this a great choice for new developers who are ready to make the jump into Android development. Being already accustomed to the professional work and experience that Annuzzi et al., bring to the table, you will be grateful to have expert insight along with the care and instruction that developers of all skill levels can benefit from."

-Phil Dutson, solution architect, ICON Health & Fitness

"Best technical summary of Material Design implementation I've seen outside the Android sample docs."

-Ray Rischpater, software development manager, Uber

"Introduction to Android Application Development is well written and fulfills the requirements of developers, project managers, educators, and entrepreneurs in developing fully featured Android applications. In addition, it emphasizes quality assurance for mobile applications, teaches you how to design and plan your Android application, and teaches the software development process through a step-by-step, easy-to-understand approach. I recommend this book to anyone who wants to not just focus on developing apps, but also to apply tips and tricks and other tools for project management in their development of successful applications."

-Bintu Harwani, founder of MCE (Microchip Computer Education)

Ask a Question About this Product More...
Write your question below:
Look for similar items by category
How Fishpond Works
Fishpond works with suppliers all over the world to bring you a huge selection of products, really great prices, and delivery included on over 25 million products that we sell. We do our best every day to make Fishpond an awesome place for customers to shop and get what they want — all at the best prices online.
Webmasters, Bloggers & Website Owners
You can earn a 5% commission by selling Introduction to Android Application Development: Android Essentials (Developer's Library) on your website. It's easy to get started - we will give you example code. After you're set-up, your website can earn you money while you work, play or even sleep! You should start right now!
Authors / Publishers
Are you the Author or Publisher of a book? Or the manufacturer of one of the millions of products that we sell. You can improve sales and grow your revenue by submitting additional information on this title. The better the information we have about a product, the more we will sell!
Item ships from and is sold by Fishpond Retail Limited.
Back to top