PubCrawler updates: HTML5 offline cache and more

I have updated my PubCrawler web app to use HTML5 offline caching. This means that saved crawls can be accessed even when there is no network connection. However, the Google Maps imagery will not load unless it is in the browser’s cache. Also creating a new crawl does not work offline as it’s a bit difficult to use geolocation with no cell towers or Wifi connect to! I have also added a favicon specific to the app.

When I updated PubCrawler to use Google Maps API V3 I forgot to mention that I changed the routing travel mode to walking. This should provide better directions as I should hope most pub crawls are done on foot!


Froyo First Impressions

The internet almost exploded at the weekend with the arrival of Android 2.2 aka FroYo. I was one of the people over at xda-developers hammering my F5 key into the desk waiting for the URL to appear. Finally it did and soon after a version for root users appeared too. Now that I have been running it for 48 hours I can provide some impressions of it.
It’s feels a bit quicker, especially the browser. JavaScript heavy sites like Google Reader fly. The wireless tethering works well enough. One of the biggest features is Adobe Flash 10.1 Beta. This is an early version so it’s a bit hit and miss. Some things work well like the short video clips on the BBC News site but some things don’t. If you hit the full BBC iPlayer site then the video stutters and the sound crackles. Hopefully future versions will work better. It’s a good feeling to be able to open any link or Google Reader item and know the content is going to load (even if its a little clunky at the moment).
There are lots of little tweaks to the applications and UI:

  • Hold down a key on the virtual keyboard and then swipe upwards and numbers and symbols appear. Not as good as the HTC IME keyboard but a nice addition nonetheless
  • The Facebook has been updated so that messages and photos now open in the app rather than going to in the browser.
  • The official Twitter client is part of the ROM now
  • Animated GIFs now work in the browser (at last!)
  • The home screen now has non-configurable shortcuts to the phone app and browser integrated at the bottom. Useful as shortcuts to these can be removed from the home screen, saving space.

The nifty Chrome to Phone plugin and companion app that they showed off at Google I/O is already available and it works as expected. Normal website links open the browser, Google Maps links open the maps application and Youtube links give you a choice of the browser or Youtube app.

There are some bad points the biggest of which is that the automatic login option for my Reader Widgets no longer works. I used an undocumented API for this so its my own fault really. If the widget is already on the home screen it should continue to work but if the app is installed fresh then it won’t load authorise with the Google Reader API. The manual login option still works so I will issue an update disabling the automatic option just for Android 2.2. I have done some tests and I might not be able to provide the automatic option again.
Other downsides are that the custom HTC IME keyboard does not work fully yet. I’m sure that will get fixed soon enough. Some applications are no longer showing up in the Market e.g. ExZeus.

SMS Bot Widget still works and so does PubCrawler.

Moving apps to the SD card is down to developers to add support for it. Google don’t recommend that widget apps use it in case the SD card is removed from the phone (and the widget is still active).

Overall it’s a great step forward for Android. Some features have been added that fix obvious issues with the platform and others put it ahead of the competition. I can’t wait for the apps and services that will utilise Froyo fully.


PubCrawler updated to Google Maps API V3

Good old PubCrawler. I have somewhat neglected my duties in maintaining this web app. However, I recently completed the migration to Google Maps API V3 for it. Advantages of this include:

  • Automatic display of controls based on device. For example zoom buttons are displayed on Android devices but not on the iPhone (because it has multitouch built in). This means that I have done away with the buttons below the map.
  • Built in map type buttons (Map, Hybrid, Satellite, Terrain) so I got rid of the button to do this at the top
  • Speed: it uses less data and therefore loads maps faster. They built it with mobile devices in mind.

There’s more but Google themselves can explain it better than I can. PubCrawler running on Maps API V2 (or PubCrawler Classic as it might become known) is still available here. I actually started this process of migration to V3 not long after it was announced. However, at first the full feature set wasn’t there so I parked it for a while. I’m not sure when the API became complete enough for PubCrawler’s needs but everything is there now.

Revisiting PubCrawler after such a long break means that the iPhone-esque look and feel is starting to look a little dated to me. At some point its going to need revising to something more unique and suited to the application’s purpose.


Back from Android Developer Lab

I had a good day at the Android Developer Lab. It was pretty freeform with a short presentation, lunch and then diving right into device testing. We got our hands on:

  • Motorola Droid
  • HTC Tattoo
  • LG Eve
  • Samsung Behold II

I concentrated on the Tattoo and Droid because of their non-standard screen resolutions. The Reader Widgets worked with only minor alignment issues on the large widget on the Tattoo. A fix is on its way.


PubCrawler and Firefox 3.5

I’m using Firefox 3.5 at home and its great. It adds HTML5 support so it should work with PubCrawler. However, whilst the geolocation functionality works well the local storage does not, so crawls cannot be saved. This is due to the local storage support being of a different type to the WebKit browsers like Safari in iPhone OS 3.x. The Google Gears Add-on is not supported by Firefox 3.5 yet so that’s not an option either. PubCrawler is primarily a mobile web app so this is not high on my list to fix.


PubCrawler HTML5 geolocation

I’ve been neglecting the PubCrawler a bit recently because of my current widget fetish. I made one quick change to it last night though. It now has HTML5 geolocation for browsers that support it. I tested it in Firefox 3.5 beta 4 which is a bit flakey when it comes to the geolocation stuff even on other peoples’ sites. Ideally I need someone to test it with a new Palm Pre which it should work for. Please contact me on webmaster at if you do. Either that or I will have to wait until iPhone OS 3.0 comes out and try it on my iPod Touch.

I have lots of changes I want to make to PubCrawler. One thing that is high on my list is updating it for Google Maps API V3 which has a much improved mobile experience. I may have to create a separate version though because V3 is not fully featured yet.

Update: just installed OS 3.0 on my iPod touch and it works.


PubCrawler HTML 5 DB – Save crawls on iPhones

I have updated PubCrawler to use HTML 5 client side storage. This is supported by iPhones and iPod Touches with firmware 2.0 and above. It means that these devices can now save crawls. For Android phones a Google Gears database is still used.
It took me a while to get the HTML 5 DB working properly. The fact that it works asynchronously (rather than synchronously like Gears) made it difficult to implement all the functionality. Also the created tables don’t have a built in ROWID column (like Gears) so I had to create my own. I’ll probably revisit it later to tidy up the code.