Product Cover Image

Android Apps with App Inventor: The Fast and Easy Way to Build Android Apps

By Jörg H. Kloss

Published by Addison-Wesley Professional

Published Date: Feb 22, 2012


Wi>Android Apps with App Inventor provides hands-on walkthroughs that cover every area of App Inventor development, including the Google and MIT versions of App Inventor.


Kloss begins with the absolute basics of program structure, syntax, flow, and function, and then demonstrates simple ways to solve today’s most common mobile development problems. Along the way, you’ll build a dozen real Android apps, from games and geotrackers to navigation systems and news tickers. By the time you’re done, you’ll be comfortable implementing advanced apps and mashups integrating realtime multimedia data from all kinds of Web services with the communication and sensor-based features of your smartphone.


Topics covered include

  • Installing and configuring App Inventor

  • Building modern, attractive mobile user interfaces

  • Controlling Android media hardware, including the camera

  • Saving data locally with TinyDB, or in the cloud with TinyWebDB

  • Streamlining and automating phone, text, and email communications

  • Tracking orientation, acceleration, and geoposition

  • Integrating text-to-speech and speech-to-text in your apps

  • Controlling other apps and Web services with ActivityStarter

  • Building mobile mashups by exchanging data with Web APIs

  • Testing your apps for diverse hardware with the Android Emulator

  • Example apps, including multimedia center, online vocabulary trainer, finger painting, squash game, compass, geocacher, navigator, stock market ticker, and many more

This book will empower you to explore, experiment, build your skills and confidence, and start writing professional-quality Android apps—for yourself, and for everyone else!


Companion files for this title can be found at

Table of Contents

Preface by Hal Abelson xv

Preface xvii

Acknowledgments xxi

About the Author xxiii


Introduction 1

Structure and Overview 2

Requirements 5

History 5


Part I: Preparing Your First App 13


Chapter 1: Preparation and Installation 15

System Requirements 17

Login Data for App Inventor 27

Installation of the App Inventor Setup Software 29

Android Device Settings 33


Chapter 2: The Development Environment 39

Welcome to App Inventor! 40

App Inventor Designer 41

App Inventor Blocks Editor 53

Integrate Android Phone 63

Using the Emulator 69

Start-Up Problems 72


Chapter 3: Developing Your First App 81

Creating the Project “LaughBag” 82

Designing the User Interface 84

Developing App Functionality 97

Creating and Installing the App 107


Part II: Easy Projects as a Warm-Up 131


Chapter 4: Basic Terms and Central Concepts 133

Properties and Property Blocks 133

Events and Event Handlers 135

Methods and Method Blocks 137


Chapter 5: The AI References 139

Component Reference 139

Blocks Reference 143

Concepts Reference 145


Chapter 6: Graphical User Interface 147

Displaying Text with the Label Component 147

Triggering Actions with the Button Component 150

Selecting Options with the CheckBox Component 153

Entering Text with the TextBox Component 158

Entering Confidential Text with the PasswordTextBox Component 161

Displaying Notices and Alerts with the Notifier Component 164

Tidying the Screen with the Screen Arrangement Components 167

Actions at App Start with the Screen Component 171


Chapter 7: Multimedia 175

Media Access Options 175

The Basic Principle: Synergy 178

Displaying Local and Online Images with the Image Component 179

Taking Photos and Displaying Them with the Camera Component 183

Managing Images with the ImagePicker Component 188

Sound Effects and Vibration with the Sound Component 192

Playing Audio Files with the Player Component 195

Playing Movies with the VideoPlayer Component 199

Recording Audio with the SoundRecorder Component 203


Chapter 8: Example Project: Creating a Media Center 211

Ergonomic Redesign of a Media Center 211

Multiple Screens for the Media Center 215


Part III: On the Way to Becoming an App Developer 221


Chapter 9: Program Development Basics 223

Elements of Data Processing 224

Using Colors with the Color Block Group 227

Processing Numbers with the Math Block Group 229

Checking Program States with the Logic Block Group 232

Editing Text and Strings with the Text Block Group 234

Defining Container Structures with the Definition Block Group 241

Managing Lists with the List Block Group 247

Controlling Program Flow with the Control Block Group 252

Tips for Program Development 267

Example Projects 278


Chapter 10: Storage and Databases 305

Saving Data Locally with the TinyDB Component 306

Saving Data on the Web with the TinyWebDB Component 313


Part IV: Developing Attractive Apps 327


Chapter 11: Graphics and Animation 329

Painting as if on a Canvas with the Canvas Component 330

Animations with the Ball and ImageSprite Components 345

Controlling Automatic Processes with the Clock Component 358


Chapter 12: Sensors 375

Measuring Orientation with the OrientationSensor Component 376

Measuring g-Force with the AccelerometerSensor Component 387

Determining Geoposition with the LocationSensor Component 403


Chapter 13: Communication 433

Task: Developing a Driver Assistance System 434

Managing SMS Messages Fully Automatically 450

Data Exchange via an Interface 462

Mobile Mashups with Web Services 487


Part V: Useful Things for the Developer 511


Chapter 14: Special Functional Areas 513

Application-Specific Components 513

Dedicated Component Groups 518


Chapter 15: Tips and Tools 527

Supported Media Formats 527

Control with the Java Console 530

Setting Up the Speech Module 535


Appendix: Additional Resources 541

On the Companion Website 541

Online Sources and Interesting Links 542


Index 545