Enyo goes Android: Paper Mache on ICS | webOS Nation

Enyo goes Android: Paper Mache on ICS 9

by Adam Marks Thu, 26 Jan 2012 1:44 pm EST

With yesterday's release of the Enyo development framework as Open Source, webOS developers now are able to take their existing Enyo code and repackage their apps to work on other platforms such as Android, iOS or even directly in the browser. Almost immediately after the Enyo open source announcement, we saw two webOS Enyo apps released on other platforms with Paper Mache on Android and FlashCards basically everywhere you have a browser. As luck would have it, Ryan Watkins, the developer of Paper Mache, was sitting next to me at the NYC webOS Developer meetup last night and I had a chance to discuss his thoughts on Enyo going open source, the overall porting process and what work he still needs to do to make Paper Mache

For those that don't know Paper Mache, it's an Instapaper client app that includes offline and background syncing, saving and syncing of your position in the article, and a multitude of preferences to make reading your articles a pleasurable experience (check out our App Review of Paper Mache for more info). After using the webOS app on the TouchPad and my Pre3 for months, my initial reactions to Paper Mache running as an Android app were extremely positive. I loaded it up on my TouchPad running Android CyanogenMod 7 and despite a little sluggishness, it worked extremely well. It looked and felt exactly like the Paper Mache that I have come to know and love, with two notable exceptions. First, instead of swiping down from the top-left to access the Application menu, I had to rely on the Android menu button in order to access it. And second, power-swipe (two-finger swipe) was absent from the app. Aside from that, it was Enyo in Android!

So how hard was it for Paper Mache to make the transition from webOS to Android? It turns out it was actually pretty easy and took less than a week to do, all done in his spare time, although Watkins said he could have done it in a day if he had time to just focus on that and not worry about "real life." The toughest part, in fact, was the learning curve of first getting familiar with PhoneGap, getting the Android SDK, learning what plugins were available and how to submit an app to the Android Marketplace, and then figuring out what needs to be done to modify the code to work on Android. Which, as it turns out, was very little coding for his version 1.0 port. Out of thousands of lines of existing code, he needed only to add a few dozen new lines, but that is what took him the most amount of time to figure out. As it turns out, webOS and Android aren't the same! The implementation of WebKit isn't the same between the two, the diversity of device sizes and resolutions is different, nor do they multitask the same way.

But, after a few days of modifying his code, Watkins was able to get Paper Mache running on both Android phones and tablets with relatively decent performance. He still needs to work on further optimizations of the code to remove some of the lag. He hopes future versions of Enyo will be able to provide a better optimized end result and that the need for these performance tweaks won't be as necessary. In addition, he still needs to figure out a way to ensure that Paper Mache can reliably perform background article sync, a hurdle thrown up by how Android multitasking differs from webOS.

Bottom line, though, is that in just a few days, Ryan was able to port his webOS Enyo app to Android and said that it would probably even take half the time if he were to do it again now that he is familiar the basic process of how it works. So if you want an amazing Instapaper app on Android that will also sync your reading position to your webOS device, check out Paper Mache.

And if you are a developer interesting in learning more about this process, you can find Ryan on twitter at @PaperMacheApp. Or you can also reach out to James Harris, the developer of FlashCards for his experiences - he's also on twitter at @erupnu has even set up some forum posts on the new EnyoJS forums to help port your Enyo app to iOS, the Chrome Web Store or for Windows Desktop.

webOS - Android








Yea I just scooped it up yesterday right after I installed CM9 on my touchpad. It cool to see that in dual booting I can have all my favorite apps in Android and webOS. Zephree also let me know on Twitter that Wooden Rows was going to Android at some point also. Keep it up devs, I'll buy your apps twice for the effort!

the other direction would be better, get some Android apps ported over to webOS. Any chance that is in the cards?

The OpenMobile technology is very promising but it needs a lot of community support & support from HP to get onto webOS. It allows just about all Android apps to run in webOS.

What's funny is how much faster these apps run on Android compared to webOS.

um..its the other way around. Paper Mache runs better on webOS than Android.

Sad...no other words.

so open source means more apps for iOS and Android from webOS ports? This isn't good for webOS is it? I thought we might see more ports from android or iOS to webOS. Or more apps in general for webOS. Isn't this going to help webOS die quicker? :'(

The core webos functionality, synergy, cards ported to android such that we can run everything there with a good ui and open base would be good. Or the ability to run android apps on webos. This, however, I don't know is so good for our platform. It does nothing to promote it. It's just another framework to run on other devices at this point. And even on our own platform, it's half-baked. No ability to sort lists (bookmarks in the browser), no ability to quickly delete multiple items from a list, horrid copy/paste system along with totally removing the copy/paste menu items (cannot paste url's into things like the transmission web UI), and my big one, a2dp streaming does not work for me from any enyo app. My mojo and PDK apps work fine with it. Just another broken framework. Is this what WebOS will be known as?

"good ui" does not describe Android, imo. or iOS. It does generally describe webOS, though.

As the new Enyo matures, there will be people who will be writing things in it. Some of those people may not have been webOS developers to begin with, but, hey, their apps will now be easily portable to webOS. Also, the licensing change does allow those of us with webOS apps written in Enyo to take them to other platforms. I don't know how well they'll do, but hey, it's worth a shot, right?

Every single one of those problems you're talking about (except possibly the a2dp streaming which i don't even know what that is) I would lay squarely on the developers of the apps in question. None of those things are even remotely difficult to achieve.