Last week the door bell rang. Standing on my doorstep was a Fed Ex guy holding a package. Addressed to me; unusual. I took it inside, ripped open the packaging in excitement. Looking at me in gleaming black; my new BlackBerry Playbook!
BlackBerry PlayBook Initial Reaction
My initial reaction. Looks great but it is small, at least compared to the IPad2; 7″ versus 9″. Fire it up and navigation is also different, with vertical and horizontal finger swipes giving different screens. After some time playing with it any initial reservations were gone. The navigation is intuitive, the design sleek and well thought through. After a quick and easy set up, surfing the web was a pleasure, particularly viewing Flex and Silverlight sites respectively. One big surprise was the HD video player. The sample video is just amazing, the screen size does not detract from the experience.
BlackBerry PlayBook Development
My main reason for wanting the PlayBook was for development. We build location focused Web sites largely in Adobe Flex and AIR. To date testing mobile tablet apps has been impossible across all mediums due to the IPad limitations (and we did not buy a Galaxy for various reasons). We had spent some time building mapping apps in the Playbook simulator for Flash Builder 4.5, then in beta and called Burrito. It was time to actually test these apps on the device itself.
BlackBerry PlayBook Development Set Up (and Hurdles)
Oh, indeed there were some hurdles to jump over to get things set up. I’ll not give you all the gory details. But will walk you through what I found and provide the most helpful links. Most of the challenges I found were simply understanding required steps, some of which were overly complex if i were being honest. This is a new device, so quirks are inevitable. So no criticism of RIM.
I wanted to test two apps. The first in the browser, an application which uses javascript to report location (lat/long) and fetches a series of venues, shops, clubs etc, within a 0.5 radius (more on this application later). The second, an actual mobile native app on the device. Let’s walk through the native app first. To run and debug an AIR (native) application on the device one uses Flash Builder 4.5. This has only just been released and I am using the trial version. So if you don’t yet have it download a copy. Next you will need a debug token. Now this is a process, ultimately you will need to upload the token to your device. So hook your Playbook via USB to your computer and follow the steps in the following document. Note in places I had to follow my nose to get certain pieces working, but in large part this document and video walks you through the process: Debug Tokens and Signing
Now I did find a couple of odd issues which are discussed in the following two links: Bar File Unsigned Error, Debug Error
Once you have solved these issues, you can debug your AIR app on the device. Its a little slow, but very cool. Just to be able to work with the app (as against the simulator) is really satisfying. That sounds a little pathetic, its the (little) nerd in me talking.
BlackBerry PlayBook – Flex App in the Browser
As described earlier I wanted to build a web app which used my location, reported by Javascript, to list places close to me. I found a terrific article to help me build the application. All worked beautifully locally. Then I pushed it out to my web server, and nothing worked! The pain. I emailed Andrew who wrote the article and we both realised that the SimpeGeo api did not allow Flex access. Simplegeo were very quick to respond to the issue, and bingo all worked beautifully. Note, I have found I sometimes need to clear my cache to have this work. An issue I am looking into.
So the Web app worked nicely on my computer. But the acid test, did it work on my Playbook. To my consternation I found it did not run! It seems the geolocation is not being reported. Now whether that is a javascript issue or some problem on the device I am looking into.
UPDATE: It seems if i also clear the cache before firing up the app on the Playbook all is well. I’ll see if there is a way around this, but rather pleased to see it fully functional on the PlayBook.
BlackBerry PlayBook – AIR Native App
The next app I built was based on the web app, and indeed used some of the same code. More directly Foursquare in nature, with a check-in option. I used the following article to help build the basic AIR mobile app with views etc, since it is different to a Flex app: Building Mobile Applications in Adobe AIR
The prototype worked beautifully. Now I did find that sometimes the GPS does not report location, I think this is an indoor issue. It works intermittently indoors, but is consistent outdoors. I’ve made a video of the app, note it is still work in progress, but you’ll see the core of the functionality in the video.
BlackBerry PlayBook Development – What Next?
As I have said the Playbook is a super device. For those of us focused on mapping and location, it will both broaden the types of applications we can build and give greater context to those already built that we choose to extend. What do I mean by context? Imagine using a mapping/GIS application for facility management. You have an interactive map with tools for buffering, measuring, viewing the attributes of facilities you manage. Suppose you could now use those tools in the field. So buffer by 10m the building in front of you using the application running on your mobile device. The addition of context adds new dimension to the decision making process.
Additional Resources
See also this video of an AIR application running on the BlackBerry PlayBook
WebMapSolutions has been consulting with clients and building location-based solutions for over 10 years. We are a professional company, focused on both mobile and non mobile application development. Enjoy LBS topic articles from Rory and Matt