Now 3D buildings in Google Earth for Android tablets!

Google Earth on mobile devices just took a big step forward with the release of Google Earth 2.0 for Android, with a special emphasis on tablets. It has some great new features, but is still lacking some of the features that we were hoping for.

The big addition to this release is 3D buildings! Every 3D building that you can view on your desktop is now available on your Android tablet. The buildings use the same high quality texture as the desktop version, though there’s no anti-aliasing built-in so things can look a bit choppy around the edges.

Curiously, it doesn’t appear to load any of the gray buildings from Google Earth — only the ones that are textured. Nor do any of the new 3D trees load, though that’s not a big surprise at this point.

In addition, they’ve worked on the “action bar” at the top of the screen to make it easy to search for locations, toggle layers, reorient yourself, etc. It’s very well done.

Other nice new features include the new content pop-ups when viewing items like photos, as shown here:

colosseum.png

The photo feature is nice, but it’s difficult to view the picture full-size. Rather than clicking the photo itself, you need to click the small Panoramio link below it. Not very intuitive, though the overall photo viewing experience is quite nice.

In terms of performance, it certainly doesn’t run quite as smoothly when you’ve got the buildings enabled, but it holds up quite well. Much of that will be based on the capabilities of your tablet, but the Xoom with its dual-core processor handles things quite well. It’s very apparent that they worked hard to optimize performance on this version.

The only real downside is that they’ve ignored most of Frank’s list of things the tablet version should have, specifically KML support. Having some degree of KML support on the tablet version would be quite nice, and I’m sure we’ll see it someday. We believe that the new Android tablets are fully capable of supporting all of the features from the desktop version, and it’s a matter of Google taking the time to port those features over.

If you have a Xoom, or one of the other few Android 3.0-enabled tablets, give it a shot and let us know what you think!

Google Places: Places & Hotel Booking Upgrades

Google Places Page Hotel Booking UpgradeGoogle continues to make upgrades to Places and Maps having recently announced a wider rollout of Google Business Photos. As noted last week there have been a number of changes/additions to Places pages themselves.

Adam Dorfman of SimPartners pointed out this additional visual upgrade to the Hotel booking feature. The new emphasis makes the feature more obvious by adding its own subheading, emphasizing the dates and bolding the price on a contrasting color.

Another change that occurred last week was that the photos, which had been much lower on the page, also are now appearing above the fold.

Google has often indicated that they will continue to change and move the content of the Places Page based on their perception of end user utility. If that is the decision criteria of how they reached the current layout the implications are not quite believable.

By that logic the review totals being duplicated above the fold implies that Google’s own reviews and fully formed review content are somehow less valuable than 3 party review totals. Google would also have to argue that users really want to do little more in Places than book a hotel.

It would seem that politics, business relations and income considerations more likely explanations for the new layout.

Android: Moving accessibility forward

For the last 8 years we at Code Factory have been making software that helps the blind and the visually impaired access their mobile phones. We’ve created this software for several different platforms. Last year we decided it was time to start doing something for the Android platform, due to its growing popularity and variety of devices.

From our past experience, developing a screen reader for a new platform required a lot of work, hacks, and investigation. Almost none of the previous platforms we supported implemented any sort of Accessibility API that we could use. Android, we thought, would be no exception to this rule. We were very wrong.

Starting at version 1.6, the Android operating system comes with a built-in Accessibility API that makes our application a lot easier to develop. All you do is create a service, which implements the AccessibilityService interface, declare it in your manifest and voilà! The system will start sending events, such as button presses, list navigation, focus changes, etc. to your service. You then convert this information to voice using a Text-to-Speech engine, and you have a screen reader.

The Accessibility API is not yet as complete as what you can find on a desktop PC, but it’s good enough to provide the users with basic user interface navigation, and we have no doubt that, as the Android platform evolves, so will the built-in Accessibility API.

We also wanted our application to go beyond a screen reader and provide an intuitive, easy-to-use UI that allowed the blind and visually impaired access to most of the phone’s functionality, such as messaging, web browsing, contact management, and so on.

We were pleased to see that we could do this Android. The existing set of UI controls, such as buttons and lists, can be overridden in order to provide custom functionality, such as speaking the text of the control. This made it possible for us to keep the user interface of our application consistent with Android, while at the same time providing the speech feedback that our users require.

By intercepting touch events within our application and using the gesture detectors that Android provides to developers, we were also able to make the touch screen accessible to our users, so they can use gestures like swipes to move through items of lists, or double-taps to activate items.

We really like how much we can accomplish with Android with so little code. Want to let a blind person create an SMS or email using voice? Simply use the SpeechRecognizer class. Want blind users who are walking on the street to know their exact location? Just use the LocationManager and Geocoder classes to give their exact street name and number.

Android lets us do a lot in a very efficient way. It wraps a whole bunch of cool technology into well-defined classes and interfaces. And if at any given time you need to know how something works behind the scenes, you just take a look at the source code, which is freely available to everyone.