So I have this popular app that almost topped some of the Google Play charts here in Poland. Nevermind the name (that's not the point) but it has 60k+ active users and growing.
I selected the Intel XDK/Crosswalk as my exporter of choice and it seems to have done a relatively good job. The app works for most people, with a couple of bumps along the way:
- the apk size is too big - a native app would be some 5 mb at the most; Crosswalk is 50 mb after installation,
- a lot of one star reviews: "doesn't work", "crashes", "says too little free space when I have 2gb" etc. - disabling some old devices and limiting to Android 4+ helps but it still happens,
- the performance could be better, and this is a simple app,
All in all I doubt I could achieve better results with any other export option.
Now I would really like to get my app on the Apple AppStore. To do that, I purchased the developer account and... it proved impossible.
My first choice - the XDK had some problems with certificates but when I finally got the export to work, the app only displayed a white screen. Then someone in another thread told me that C2 doesn't really support exporting to iOS via the XDK.
My second choice was Ejecta, as it seems this is currently considered *the* iOS exporter. Unfortunately though my app really needs textboxes, xml and other stuff that Ejecta just doesn't support.
Sooo... right, CocoonJS. I got the premium account, exported, opened with XCode and launched. Starts slow, displays splashscreens. Then it turns out the textboxes are gone, my swipe gesture for some reason only works on one side of the app, the scaling is screwed (displays things outside of the layout no matter what scaling settings I choose in C2 and CocoonJS.)
So as you see, I'm starting to think I'm beating a dead horse.
Now, the funny thing: my app works perfectly well on any device in the browser. So one would think 'hey, then maybe the best option would be to have a version of Chrome without toolbars disguised as the app.' But wait... isn't that how these exporters actually work? So I'm wondering... why is it so problematic to create a working wrapper if the devices are already capable of running the apps smoothly on their browsers? I mean really.