Create Android mobile apps, no programming required!
Even with limited programming experience, you can easily learn to create apps for the Android platform with this complete guide to App Inventor for Android. App Inventor for Androidis a visual language that relies on simple programming blocks that users can drag and drop to create apps. This handy book gives you a series of fully worked-out apps, complete with their programming blocks, which you can customize for your own use or use as a starting point for creating the next killer app. And it's all without writing a single line of code. Don't miss the book's special section on Apps Inventor Design Patterns, which explains computer terms in simple terms and is an invaluable basic reference.
- Teaches programmers and non-programmers alike how to use App Inventor for Android to create Android apps
- Provides a series of fully worked-out apps that you can customize, download, and use on your Android phone or use as a starting point for building the next great app
- Includes a valuable reference section on App Inventor Design Patterns and general computer science concepts
- Shows you how to create apps that take advantage of the Android smartphone?s handy features, such as GPS, messaging, contacts, and more
With App Inventor for Android and this complete guide, you'll soon be creating apps that incorporate all of the Android smartphone's fun features, such as the accelerometer, GPS, messaging, and more.
From the Author: Getting Data In and Out of App Inventor Apps
In today’s mobile world, applications are expected to not only provide functionality locally but also have up to date content and external awareness.
"How do I get all this data into App Inventor?" is one of the most frequently asked questions by new developers. Initially getting rows and columns of data into App Inventor was a kind of linear equation. You used the TinyWebDB or you turned to some of the third party hacks that are available.
The TinyWebDB component is still a possibility for volatile data that needs to be pulled from the internet and placed into App Inventor. It has the added benefit of being quick and allowing write to the web database. For getting rows and columns of data into App Inventor the algorithm would follow these steps:
1. Pull data from WebService and place in temporary variable.
2. Parse data into psuedo-array
3. Write data to a local TinyDB
This is still an option for getting tabular data into App Inventor. It has the advantage of being fast and stable. It has the disadvantage of needing the TinyWebDB service installed and running on a web server. Setting up and installing the TinyWebDB service can be complex and frustrating. There is the added complexity of needing a separate application to actually pre-populate TinyWebDB with data.
The App Inventor team recently released an update to App Inventor that includes functionality to allow access to the Google Fusion Tables. Google Fusion Tables is an online database solution that allows simple SQL like commands to be sent via HTTP to stored data. There is a nice back-end management solution that allows a user to pre-build and pre-populate data into created tables. All of the data lives in Google’s "cloud" service. The back-end management system will be very familiar to users of Google Docs or other Google cloud products.
The algorithm for getting tabular data into an App Inventor app using Fusion Tables will follow these steps:
1. Create the desired Fusion Table and populate the table with data using the Web backend.
2. The app will be "initialized" by pulling the data from a Fusion Table.
3. The app will store the returned Lists in a local TinyDB
The advantage of Fusion Tables is the ability to easily pre-populate the online data by hand entering or importing a spreadsheet of values. This will allow the developer to maintain the data that all the deployed apps consume. Thereby, fresh content and data could be added to applications by changing the data in the Fusion Table.
The disadvantage of Fusion Tables is the data retrieval method. When the data is pulled from the Fusion Table the application stops while displaying a notification that it is pulling data from a Fusion Table. Which appears a little bit hokey on a professional level application. It is also linear and fairly slow. In other words you will not likely be repeatedly and frequently pulling data from a Fusion table in the same App session. Instead, an application would likely pull data once when the application starts and then only when specifically refreshed.
The options and power that are given to developers with the new Fusion Table has yet to be fully explored and I look forward to some exciting uses of Fusion Tables. (Hint: Someone should use this for a text based MMORPG ... the possibilities are endless. ) The newest version of App Inventor released by the incredible rock stars on the Google App Inventor developer team includes the long awaited Holy Grail. I am, of course, talking about the "WebComponent". Now the web component as it currently exists is a little bit limited and not easy to implement. However, it is REALLY powerful even in its current iteration. It has the power to send HTTP formatted requests to existing web services and web sites and then store and manipulate the returned data. It combines the speed of the TinyWebDB service requests and the flexibility of using existing data like with the Fusion Tables. The web component brings the ability to use HTTP POST and GET commands which are the foundation of most simple web services. The algorithm for using the WebComponent would (or at least could) follow these steps:
1. Establish (or use existing) web service that will respond to GET/POST.
2. Use the WebComponent to send a GET request to the service.
3. Use the Text parsing blocks to parse out the tabular data sent by the web service.
The advantage of using GET/POST commands is the speed with which they can be used inline with programmatic functions in an application. Another advantage is the flexibility of using existing data and or maintaining external data in a database behind your webservice. The WebComponent opens up App Inventor to REAL web service and interactive internet services development.
I am excited about the direction the App Inventor team is taking this awesome product and look forward to an even more mature Rapid Application Development framework.