webOS to get mic, camera API, faster services, plenty more by fall | webOS Nation

webOS to get mic, camera API, faster services, plenty more by fall

by Dieter Bohn Tue, 27 Apr 2010 9:54 pm EDT


We're fresh off the Palm Developer Day Keynote and a crazy-good interview - both with Ben Galbraith and Dion Almaer of Palm. We'll have a full write up of the interview on Monday, but we wanted to hit up the big developer news from this morning's keynote for those who missed the liveblog.

Though Palm's dynamic duo didn't say what version number we're looking at, they did suggest that 'by fall' we should see the features they described today. Primarily we're talking about new APIs and tools for developers - the main new user-facing feature is an updated version of the App Catalog.

After the break, a preview of some of what's coming in the next version of webOS.

New APIs

The easiest bits to understand right away is that Palm is offering a few new APIs to developers for richer apps. The big one that most developers have been asking for is an API for proper, low-level microphone and camera access. This means that apps like Shazam and bar-code readers will finally be possible on webOS in the SDK.

Palm is also going to offer media indexer, which will make it easier for 3rd party developers to create music and video apps. 

There will be new crypto/security APIs and also support for Bonjour/Zeroconf. The latter will make it easier for webOS devices to autodiscover devices in a network - think easier co-op or competitive gaming and even printer discovery.

Finally, Palm is going to offer a Bluetooth Serial Port Profile. It's a little unclear how much will be possible here, but at the very least we're finally starting to smell the possibility of Bluetooth keyboard support. We can't say that's coming for sure, but if nothing else Bluetooth SPP should allow 3rd party developers to add support for an expanded list of Bluetooth accessories.

New Javascript Background Services

Next up, Palm is significantly expanding and improving their background services, switching them from java to javascript. What this will mean for users and developers is that apps that need to crunch a significant amount of data will be able to do it quite a fit faster and easier. As they mentioned in the keynote, a lot of stuff that was previously only available to Homebrew app developers will now be possible in official apps.  

There are a bunch of new services too - File I/O especially was a favorite with the developer crowd here today.

db8: faster storage and cloud service sync

Next up is db8, which is a new backend interface for apps to store and sync data on device. What's awesome about db8? Primarily three things:

  1. Performance storing and accessing data should be significantly better (especially with the new javascript services). 
  2. It's 'pluggable' on the backend for your choice of storage methods
  3. It offers fast, simple, and reliable sync services to syncing locally stored data with a CouchDB database in the cloud.

Yeah, it's a little nerdy, but the bottom line is that apps that need to sync a bunch of data (like, say, the email client) will now be able to not only use background javascript services to shuffle data around more quickly on the device, but db8 to more quickly sync that local database to the cloud.

HTML5: More speed, more awesome, more standard

Ben and Dion spent quite a bit of time looking at the stupendous new stuff coming with HTML5 and while some of it isn't necessarily on-tap for the next version of webOS, it's clear that Palm is not only committed to including but excited about some of the new features in HTML5. Hardware-accelerated CSS transitions are a go, which will really speed up animations and transitions in webOS. 

One thing that's definitely more of a ways off: webGL graphics - but it's on the radar. 

Mojo Core: easier web app porting

Another new tool: "Mojo Core." The idea here is that Palm is going to make it significantly easier to add webOS-specific functionality to existing web apps. Instead of rewriting the web app virtually from scratch to support Palm's Mojo bits, developers can add Mojo services like geolocation, local storage, app cache, and even user interface elements with literally just a few lines of code in their existing web app. The web app will then be able to use those mojo bits if it detects it's on a webOS device and gracefully ignore them when it's not.

We should also add that cross-platform web heroes PhoneGap are here. They're committed to working with Palm and Palm's making sure that PhoneGap's work will happen on webOS.

Improved App Catalog

Palm couldn't go into much detail on this, but they did show a screenshot of an improved App Catalog interface. We're seeing a better way to sort through Hot, Paid, Free, and New apps separately from app categories.  Here's to hoping that improved search on the backend will come too.

Wrapping up

We're pumped about the new APIs and we're really pumped at what we expect are going to be significant speed improvements with the new CSS animation + javascript + db8 improvements. Palm is optimizing and speeding up webOS on virutally every front while staying committed to web standards in a way will warm the heart of even the most-jaded mobile or web developer.

We were hoping that Palm would break their radio silence with regard to the Mojo Messaging Service for push notifications, but sadly no dice on that front. It's no surprise, though, as Palm wasn't looking to make major OS announcements here, just to let developers know what sort of APIs and tools they can look forward to.

For those stressed about DataViz and DocsToGo, hybrid PDK/SDK apps aren't quite ready to rock yet, but we should be a matter of weeks away from a developer beta that supports PDK apps from independent developers.

Overall, the main thing to remember is that Palm is heavily committed to future-looking HTML standards and making the full SDK as fast and powerful as 'native' PDK and native apps on other platforms.