Summer is an odd time. With no ice hockey matches to attend our thoughts turn to other subjects, such as why does RefSignals sometimes repeat questions? I've been asked a few times about how to stop it doing this, so here is a solution. RefSignals is an Android app built with Google App Inventor for Android that quizzes you on the signals made by referees during ice hockey matches. In February I wrote about this app and published the source code so that people could take it and use it as the basis for their own quiz apps. The response was great and the app has been remixed for all sorts of subjects so I hope this will come in useful.
If you would like to take your first steps in mobile app development then a book worth a look is App Inventor for Android by Jason Tyler. It is aimed at people starting out in programming and those who want to know how to get the most out of Google's innovative app creation platform of the same name. The book takes you from the basics to some surprisingly advanced applications. For me it it is a significant book too as I worked on it as the Technical Editor, my first time in such a role.
*** Update! See: RefSignals: A quiz app built using App Inventor - how to stop repeated questions for an improved version of this app! ***
I've been going on quite a lot about Google's App Inventor for Android to anybody who will listen recently. An example application I show them is one I built as a result of a conversation I had with my friend Georgina Parsons while we were sat in an ice rink in Gothenburg, Sweden watching a great match between the Frölunda Indians (the local team) and HV71. Ice hockey is a shared interest of ours but normally we attend matches in England so following proceedings in Swedish could be tricky. Fortunately the referees have a series of standard signals they make to indicate which penalties they are calling and our conversation turned to how it would be great to have a mobile app to help us learn those signals.
Many organisations are offering rich Linked Data stores now that you can interrogate with the SPARQL language. This data might be interesting for the mobile app developer to work with so it would be great to be able to experiment with this data in Google App Inventor for Android applications. At the moment you cannot do this directly as App Inventor only offers quite limited functionality to interact with the web, however with the help of a server side "bridging script" we can close that divide and send a SPARQL query from inside the application and deal with the results we get back.
I meant to post this a bit sooner, but anyway here is a link to a talk I did last week about Google App Inventor for Android for the Vital programme. It was my first time giving a presentation online so forgive my possibly frequent use of the words "um" and "err"! It was a great experience and I enjoyed giving the presentation to a great bunch of people.
I am a big fan of Delicious the online bookmarking site. It has proved very useful to me as a way to find information and build a collection of links that are useful to me. Delicious also has a really good mobile site and can be a good way to retrieve links from earlier research while out and about. One issue that is always a bit fiddly with mobile devices though is text entry, so wouldn't it be great if we could just say out loud what terms we would like to search for and populate the search box with that? Interestingly this is quite an easy facility to build with the new Android App Inventor. In just a few clicks we can build an application that takes voice input, processes it and then launches a web page with a search box populated with those terms.
Google's Android App Inventor is great fun to play with and I think represents a fascinating leap forward in mobile application development. It provides a whole toolbox of ready to go functionality, but sadly missing from this toolbox are facilities to interact with web sites and services (with the exception of Twitter of course). However there is one component that provides a glimmer of hope and if you want to publish data in a way that can be used by Android App Inventor developers then you can use this component with a PHP script to easily pass data to the mobile device.
Recently I got my invite to try out the beta of Google App Inventor for Android, a simplified environment to enable people to create applications for Android based phones using visual building blocks instead of a programming language. Google have written extensive set up instructions to get your computer and phone set up: http://appinventor.googlelabs.com/learn/setup/index.html but also on this page is a bit of text that could cause us trouble: "If you are using GNU/Linux, then you should use Sun Java rather than OpenJDK. App Inventor does not work well with OpenJDK." Unfortunately OpenJDK is the default for Ubuntu 10.04 and it might not be obvious how to get the Sun version, so I thought I'd better document what I did to get it working.