App Inventor for Android - USF Computer Science Department

advertisement
App Inventor for Android
Do-it-yourself App Creation
David Wolber, Computer Science
Talk Outline
•
•
•
•
•
•
App Development (iPhone/Android)
App Inventor introduction
App Inventor at USF
Demo: No Texting While Driving
App Inventor’s Secret Sauce
What you can build
David Wolber, Computer Science
Smartphone market share
David Wolber, Computer Science
Market share w/newbies
http://blog.nielsen.com/nielsenwire/?p=25901
David Wolber, Computer Science
Developing Apps
• iPhone
– Objective C
– High level tools to turn pre-existing content
into an app. (e.g., http://www.appmakr.com/learn_more/)
• Android
– Java
– App Inventor
David Wolber, Computer Science
App Inventor
• Blocks language, like plugging in puzzle
pieces.
• Similar to Lego Mindstorms and Scratch
but for phones not robots
• “Hypercard” for mobile phones,
“electronic napkin” for prototyping apps
• Democratizes app building.
David Wolber, Computer Science
An App Inventor App
What do you think this app does?
David Wolber, Computer Science
The Brief History of App Inventor
• Summer 2009
– Hal Abelson of MIT
and Google
– Pilot program with 10
schools
– Public launch July
2010
David Wolber, Computer Science
App Inventor at USF
• CS 107: Computing, Robots, and the Web.
– 4th semester teaching App Inventor
– Now 2 sections
• Students’ work cited in SF Chronicle,NY
Times, Techcrunch, Wired, …
• Wolber authored App Inventor tutorials
• O’Reilly Video series
• Co-authoring book
David Wolber, Computer Science
Demo: “No Texting While Driving”
• Three windows of environment
• Change title, show in emulator
• Add label, textbox, button for custom
response
• Respond with a fixed message,test
• Use custom response of user
• Custom response for mom
• Speak it aloud
David Wolber, Computer Science
Why is it so easy?
• No syntax. The blocks language eliminates the need
to remember and type code
• Everything is right in front of you. Components and
functions are in drawers. Just find,drag, and drop.
• Events at top level. "When this happens, the app
does this" is the correct conceptual model.
• High-level components. The app inventor team has
built a great library with simplicity the main goal.
• Only some blocks plug-in. You can't do things that
don't make sense.
• Concreteness. Less abstract than many languages.
David Wolber, Computer Science
Apps students have built
•
•
•
•
•
•
Quizzes, surveys, study guides
USF restaurant guides
Droid Where’s my car?
Broadcast Hub
Next Muni
Games
David Wolber, Computer Science
What you can build
• Educational apps
– Including video, images, text-to-speech
•
•
•
•
•
Location-aware apps
Games
NXT Robot Controllers
Web-enabled apps
Personal apps
David Wolber, Computer Science
Demo: Quiz App
•
•
•
•
Lists for questions,answers
Index to walk through questions
Next button
Checking the answer
David Wolber, Computer Science
Try It!
• Go to: appinventor.googlelabs.com
• Register and get started
– Download software
– Try HelloPurr app and other tutorials
– Use phone or emulator
• Help-- Wolber’s sites:
– appinventor.org
– appinventorapi.com (advanced)
• Take CS 107 (and send students!)
David Wolber, Computer Science
David Wolber, Computer Science
David Wolber, Computer Science
Download