Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
About This eBook
Title Page
Copyright Page
Dedication Page
Table of Contents
Acknowledgments
About the Authors
Preface
What Is MIT App Inventor?
Why Android?
What This Book Covers
Chapter 1: An Introduction to Programming
Chapter 2: Building with MIT App Inventor
Chapter 3: App Inventor Toolkit
Chapter 4: Variables
Chapter 5: Procedures
Chapter 6: Working with Lists
Chapter 7: Games and Animations
Chapter 8: Multiple Screens and Debugging Techniques
Chapter 9: Using Media
Chapter 10: Sensors
Chapter 11: Databases
Chapter 12: Distributing an App
Next Steps
1. An Introduction to Programming
Operating Systems
User Interface
Android Strengths
Extending App Capabilities
Google Services
Applications
Programming Languages
Summary
Exercises
2. Building with MIT App Inventor
The MIT App Inventor Site
Signing In
Designer
Blocks Editor
The AI2 Companion App
The Android Emulator
USB Connection to Android Device
Getting Inside an App
Event Handlers
Doing One Thing at a Time
Exercise: Sherlock Is Watching
Adding an Image
What Can You Build?
Speak, Android!
Pollock
Fore
Android Quiz
Uploading to Google Play
Summary
Exercises
3. App Inventor Toolkit
Creating a New Project
Designer Essentials
Palette
Viewer
Components
Properties
Media
Exercise: Speak, Android!
Connecting Your Device
See Your App on a Connected Device
Summary
Exercises
4. Variables
Component Properties: The Built-in Variables
Clicker-Counter App
Properties: Getters and Setters
Clicker Counter Extensions
Event Parameters: Special Variables
Exercise: Pollock
The Interface
Programming Blocks
Additional Exercises
Scope: Global and Local Variables
Global Variables
Example App: Up/Down Counter
Local Variables
An Example App: Random Guess
What You Can Store in Variables
Summary
5. Procedures
What Is a Procedure?
Types of Procedures
Why Use Procedures?
Arguments
Exercise: Flick
Additional Exercises
Summary
6. Working with Lists
Modeling Things with Data
The List Block
The Basics
Creating an Empty List
Creating a List with Some Stuff Already In It
Working with Lists
Color as a List
Types of Lists
The One-Dimensional List
Lists as Data Structures
Using Multiple Lists Together (That Expand on Demand)
Abstraction with Lists and Procedures
Lists that Expand on Demand
Common Problems
Running Off the End of the List
Defining a Variable That Depends on Runtime Elements
Exercise: Android Quiz
Additional Exercises
Summary
7. Games and Animations
Adding Animations
ImageSprite
Ball
Canvas
Animation Examples
Smoother Animation
Edges and Collisions
Exercise: Fore
Additional Exercises
Summary
8. Multiple Screens and Debugging Techniques
Why More Than One Screen?
Building Apps with Multiple Screens
What Screens Are Good At
Issues with Multiple Screens
Switching Screens
Sharing Data Between Screens
Debugging Techniques
Leaving Comments
Test Small and Test Often
Do It
Name Well
Backing up Your Work
Exercise: Pollock Plus One
Additional Exercises
Summary
9. Using Media
Audio
Images
The ImagePicker
The Camera
Video
Exercise: Camera Action
Additional Exercises
Summary
10. Sensors
Building Location-Aware Apps
Using Location
Location Data
Using the Maps App with Intents
Saving Location Data
The Accelerometer
Detecting Tilt (and a Little Background Physics)
The Orientation Sensor
Exercise: Pushpin
Part 1: Designing Current Location Readout
Programming Part 1: The Current Location Readout
Part 2: Pinning a Location to Remember Later
Programming Part 2: Pinning a Location
Extension Activities
Summary
11. Databases
TinyDB
Retrieving Data from TinyDB
A Few TinyDB Details
TinyWebDB
Setting Up Your Own Web Database Service
Security and Privacy
FusionTables
Using Web GET and POST
Basic Files
Web APIs
Exercise: WriteMore
Additional Exercises
Summary
12. Distributing an App
Live Mode
Security Settings
Creating an APK File
Downloading Directly to a Computer
Downloading with a QR Code
Creating an .aia File
Exercise: App Distribution
Version Codes
Google Play Developer Console
Summary
Index
← Prev
Back
Next →
← Prev
Back
Next →