This is rather disappointing implementation. This doesn't solve the problem is making web apps first-party apps on the platform, as this is still running on top of Java. They need to do something to allow non-Java runtimes to have the same access to system APIs that Davlik has.
It would be interesting to see how this plays out but it is indeed disappointing for an alpha. Regardless of the platform apps need to work with data. Packaged apps do not have access to websql, and you are pretty much forced to use IndexedDB, which apparently isn't even a high priority for the alpha. With Cordova if there isn't an API for something native you want you can write or find a plugin to do so, e.g. Sqlite, so to me this was sort of a step backwards given that it's based on Cordova. Of course, if there is some way to use Java plugins then it might be a different story.
I already use IndexedDB for Chrome packaged apps, you're basically forced to use it. The fact that there are Chrome-specific APIs means that there could have been one for SQLite but the NoSQL agenda is pretty strong.
This just feels like it's all over the place because they seem to hint at being able to use the Cordova plugins from Chrome Apps (restrictive), so I don't get the write-once-run-almost-everywhere vision. It seems like you will have to write a Chrome App then write a Chrome Mobile App. This whole thing is just a weird marriage.
Sounds like you really like SQLite. WebSQL is dead and never coming back. It doesn't make sense for the Chrome developers to maintain an old API that's not part of the web platform just because some people don't like the alternative. Eventually someone will create a library that lets you do SQL with IndexedDB (if they haven't already) and you'll get the best of both worlds.
By the way, Mozilla was the primary party that objected to WebSQL and it wasn't because of an NoSQL agenda, it's because they didn't want to tie a web API to 1 specific implementation (SQLite).
I don't really care either way, my point is that they pushed out this announcement without any clear indication about handling data in apps. That might be intentional. IndexedDB is fine for certain apps but for more complex apps with non-trivial data relationships it doesn't work. I also don't care about WebSQL per se. The thing is that they didn't put a SQL database under the chrome APIs, like they have for chrome.storage. To me the whole thing is silly because iOS, Android, and WP8 provide SQLite natively and you can access it via Cordova.
This is not about WebSQL vs. IndexedDB, it's about Chrome Apps not having access to a SQL database. Btw Chrome itself supports WebSQL, but it was removed in Chrome Apps.
Packaged Chrome Apps: IndexedDB
Cordova: anything that's supported - SQLite (not WebSQL), IndexedDB, w/e
Packaged Chrome Apps + Cordova (the subject of this whole thread): ???