[Cross-posting a message from dev.platforms.mobile] I've been doing a lot of [webapp-]related work recently, and in fact shipped a Firefox/Android based education webapp to an offline deployment in Ethiopia yesterday.
Here are the major bugs/missing features I've found: * AppCache is really buggy. Ogg audio doesn't play from appcache (bug 791017) and most video won't play either (bug 741351, bug 784329). The AppCache.swapCache() method is broken (bug 769171). On FF/Mobile, the cache also doesn't appear to update correctly when the manifest changes (still working on isolating a test case). * There's no good way to install a webapp without connectivity (bug 790456). I've resorted to copying profile directories around using adb, but it's evil. * Webapp installation isn't scriptable by Android intents, either (bug 790457) so it's hard to automate installation (for classroom purposes, for example). * The size of the offline cache and of local storage is fixed, and very small for Firefox/Android. This will impose a strict limit on the size of your offline webapp and of the size of the data it can manipulate. These limits should really be specified by the webapp's manifest. (The user should be able to install a 50M webapp if they want to!) (bug 792651) * No integration of add-ons and webapps (bug 790461). This makes "phonegap"-like extended functionality for webapps needlessly difficult. I've resorted to manually hacking the prefs.js for the installed webapp to re-enable extensions, and I've written an add-on-to-JNI bridge which allows your addon to access all of the Android SDK (see https://github.com/cscott/intent-addon for an example). However, the Activity Context isn't properly exposed to Add-On authors (bug 790452). * No splash screen support (bug 604728). Your app will look pretty ugly while it is starting up. * Versioning is problematic if you use AppCache -- AppCache only checks for new versions when the page is "loaded" or "reloaded", and there's no way to control that on an Android webapp. Android Jelly Bean allows you to close apps easily (good) but it caches "closed" apps (oops!) so even if you close the app and relaunch it there's no guarantee you'll get reloaded. [* Local Storage in desktop webapps seems to be broken as well: bug 791281, possibly related to bug 767258] That said, even with those issues webapps worked well enough for me to ship code to Ethiopia this week, and the mozilla webapp stuff is IMO much better than PhoneGap on Android. Video and WebGL work, for example! --scott -- ( http://cscott.net ) _______________________________________________ dev-webapps mailing list [email protected] https://lists.mozilla.org/listinfo/dev-webapps
