I spent a little of my weekend time tweaking the new PhoneGap-based Android
app to make it less dependent on, well, Android. And even on PhoneGap. ;)
The app can now build with PhoneGap for iOS[1] (iPhone, iPad, iPod Touch)
though there are some problems. The iOS stub source and Xcode project are
in the main git repo along with the Android bits, so nothing needs to be
separately maintained or copied.
[1]
http://www.mediawiki.org/wiki/User:Brion_VIBBER/iOS_build_notes
Do note the major problems noted at the bottom of that page; there may be a
bug in PhoneGap itself that's causing articles to open in Safari instead of
in the iframe[2], and we don't yet have a non-Android menu implementation
so not all features are accessible[3].
[2]
https://bugzilla.wikimedia.org/show_bug.cgi?id=32069
[3]
https://bugzilla.wikimedia.org/show_bug.cgi?id=32068
In addition, the app can now run without PhoneGap at all -- if you load it
straight into a web browser it'll try to just go on its merry way without
initializing the Android or PhoneGap-specific bits. This actually functions
in Chrome -- but for now only if you launch Chrome with the
--disable-web-security option which isn't a good idea. ;)
It needs currently-forbidden cross-origin access to things in the iframe
and over XHR, and will need to be tweaked to work more directly in regular
browsers... but this is a good indication that it'll be relatively easy to
port this to other HTML/JS-based app environments, such as WebOS, ChromeOS,
Mozilla's experimental Boot2Gecko project, etc.
If nothing else, it's a lot quicker to reload in Chrome than to relaunch
the app in an Android emulator. ;)
As with the iOS version, there's no Android popup menu and we don't yet
have an alternate.
A few features -- eg the 'Articles near me' map view -- currently are
implemented as Android-specific plugins and will need iOS and general web
variants too.
-- brion