Tutorials

Hello Purr

Hello Purr is the Hello World tutorial for App Inventor. This simple exercise takes you through the very basics of App Inventor, and should be the first app you build.

Basic

Once you've set up your computer and built the Hello Purr app you are ready to begin these basic tutorials.

Magic 8 Ball
This introductory module will guide you through building a “Magic 8-Ball” app with App Inventor. When activated, your 8-ball will deliver one of its classic predictions, such as “It is decidedly so” or “Reply hazy, try again.” At first you activate the 8-Ball by clicking a button. If you are using a device (rather than the emulator) you can add in an accelerometer component so that the 8-Ball makes a new prediction whenever the device is shaken. Note: This tutorial can be used in place of Hello Purr since it initially has the same functionality, and then goes on to the extend that functionality.

PaintPot
PaintPot lets you scribble in different colors by touching the screen to draw dots and lines. Concepts introduced in this project include: Canvas components for drawing; event handlers that take arguments, including touch and drag events; and Arrangement components for controlling screen layout. Part 2 extends the project to draw dots of different sizes, as an introduction to global variables. Variation: PaintPic extends this app to use the camera component to take a new picture for drawing upon.

MoleMash
In the arcade game Whac-a-Mole TM , a "mole" pops up at random positions on a playing field, and the user score points by hitting the mole with a mallet. This is a similar game that uses the touchscreen. This tutorial introduces: image sprites, timers, and procedures.

PicCall
PicCall illustrates how to create applications that use the phone's functionality. This application lets you select people from your contact list and display their pictures. When you press a picture picture, the phone calls that person.

Note: You may access PDF versions of all chapters of the book App Inventor: Create Your Own Android Apps by David Wolber, Hal Abelson, Ellen Spertus, and Liz Looney (2011)

Advanced

These tutorials build on the things you learned in the beginner tutorials and explore App Inventor's more complex functionality.

New! Mini Golf
Mini Golf is an addictive little game app that demonstrates how to use the Fling, TouchUp and TouchDown gestures on Sprites. Hold down the positioning arrows to move the ball to the desired position on the tee, then Tee Off by flinging the ball toward the hole. After a hole is scored, the screen randomly sets up a new hole, providing a unique challenge every time.

New! Pizza Party
Pizza Party is a database app that collects dinner orders from different people and stores them in a Google Fusion Table. The app also uses the WebViewer component to let the user see the entries in the table. Fusion Tables are Google's free cloud database solution. Your fusion table can be read-only to the public, or you can grant multiple people the permission to write to the table. See the tutorial for more information, and begin creating your own shared database solutions!

New!AlertMe
AlertMe app receives text messages (Texting component, and notifies the user even when the app is not currently running. If the app is running (visible on the screen), when it receives an SMS, the message will be displayed on the screen. If it's not running, the user will receive a Notification in the status bar, which can be viewed by pulling down the status bar.

Quiz Me
QuizMe is a trivia game about baseball, but you can use it as a template to build quizzes on any topic. With QuizMe the user steps through a series of questions, clicking a Next button to proceed to the next question. The user enters an answer for each question and the app reports whether each answer is correct or not. For this tutorial, you'll create an app in which the questions are always the same unless you, the programmer, change them. Later, you can create MakeAQuiz, an app that lets users create and modify the quiz questions.

MakeQuiz and TakeQuiz
MakeQuiz and TakeQuiz are two apps that, in tandem, allow a teacher to create quizzes for a student. Parents can create fun trivia aps for their children during a long road trip, grade school teachers can build "Math Blaster" quizzes, and college students can build quizzes to help their study groups prepare for a final. This tutorial will walk you through creating both the MakeQuiz and the TakeQuiz app.

Map Tour
This is a two-part tutorial introduces the ActivityStarter component for launching arbitrary Android Apps and the ListPicker component for allowing a user to choose from a list of items. You'll build MapTour, an app for visiting French vacation destinations with a single click. Users of your app will be able to visit the Eiffel Tower, the Lourve, and Notre Dame in quick succession.

SMS Texting

Text Group
This tutorial introduces the Texting component for sending and processing texts. You'll build an app that texts a message to a list of phone numbers.

Text Group Part 2
This tutorial extends the Text Group tutorial. That app sent a text to a fixed list of phone numbers, and only the programmer could change the numbers in the list. The app in this tutorial allows the user to add and remove the phone numbers in the list, and it stores the list persistently in a database.

Broadcast Hub
In this tutorial, you'll write an app that automatically responds to texts messages and broadcasts texts messages it receives to a list of phone numbers.The app is inspired by FrontLineSMS, a tool that has been used in developing countries to monitor elections, broadcast weather changes, and in general connect people that don't have access to the web but do have phones and mobile connectivity.

No Text While Driving
This tutorial demonstrates how an app can respond to text messages automatically. You'll build an app that sends back a response when a text message is received. The idea for the app came from University of San Franciso student Daniel Finnegan.

No Text While Driving, Part 2
You know that texting while driving is dangerous, so you've created and installed the No Text While Driving app on your phone. Now, when you drive you open that app and let it auto-respond to incoming texts. But the jingle of the texts coming in is killing you with curiosity-- wouldn't it be great if you could hear the texts spoken aloud? With Part II of the tutorial, you'll extend the app so that it speaks out both the message and who sent it. And since you're making some changes anyway, you'll modify the auto-response so it reports your whereabouts in the reply: "Sorry, I'm driving and I'm at 1600 Pennsylvania Avenue". Before completing this tutorial you should complete part I.

Google Voice for Wifi Texting
This guide shows you how to set up a Google Voice account so that your wifi-only device can send and receive texts. The App Inventor texting component is capable of interfacing with Google Voice so that you can create apps that make it possible to text without a phone carrier.

GPS

Android, Where's My Car?
You parked somewhere near the stadium or bar, but when the concert/party ends you don't have a clue where the car is. The friends you came with are equally as clueless. Fortunately you haven't lost your Android phone that never forgets anything, and you remember you have the hot new app, Android, Where's My Car?. With this app, you click a button when you park your car, and the Android uses its location sensor to record the car's GPS coordinates and address. Later, when you reopen the app, it shows you a map from where you are to the remembered location-- problem solved! With this tutorial you'll be able to download a created app and then study the annotated blocks below to better understand the app and App Inventor programming in general.

Calling an external web service (using APIs)

Stock Quotes
This tutorial demonstrates how to use the Web component to make an app call a web service (Yahoo! Finance) with a simple application programmer interface (API).

Layering Sprites

MoleMash 2
MoleMash2 provides an alternative implementation of the classic boardwalk game that demonstrates how to use the Advanced features in the Blocks Editor and how to layer Sprites.

Multiple Screens

Colored Dots
Colored Dots is a simple painting program that uses a second screen to select the paint colors. This tutorial serves as an introduction to creating apps that have multiple screens.

Video Player

VideoWall
The Video Wall app demonstrates how you can control the size of a video playing in an app by using the Video Player component's Width, Height, and FullScreen features. The VideoWall uses media assets (videos stored in the app itself), but you can use the app to display videos from the internet as well.