So I was "forced" to try CooconIO due to the issue I've described here viewtopic.php?f=146&t=168503. Intel said that it will take at least few weeks to fix it and I don't really wanted to wait that time. Before trying to compile my game with CLI 5.1.1 manually I decided to try the CooconIO and I thought I'd share my thoughts.
Not at the end but at the beginning I will answer on the most important questions.
Should you leave IntelXDK and migrate all your apps to CooconIO?
The short answer is - no.
Do I recommend using CooconIO?
The short answer is - yes.
I will post questions and answers for the parts I really wanted a true answer.
Does CooconIO have better performance than IntelXDK (WebView vs Crosswalk vs Canvas+)?
WebView - I saw somewere Ashley was recommending it if you are targeting devices with Android 5.0+. Well I don't recommend it. I've tested it on SGS4 and Xperia Z1 with two games and for both games performace was worse then with the two following technologies.
Crosswalk - is ok. It's not a rocket speed technology and it's not bug-less but it is really fine and if you optimize your game correctly, Crosswalk can give you very decent performance. I've managed to build a game with up to ~500 moving objects which is running with 55-60 FPS on SGS4.
Canvas+ (CooconIO) - I think it gave me slightly better performance... but really "I think". If the performance is better then it's really not a big difference but rather tiny. Anyway it is ok as Crosswalk.
Can I update my game on Google Play with CooconIO APK if I the game was wrapped with IntelXDK earlier?
No you can't. There are two reasons (at least I know only two). First of all CooconIO has no option to edit app version (this is actually a good thing, cause CooconIO does it for you automatically, where with IntelXDK you had to remember to increment the ID before you publish your APK). And the second reason is that there are different sign certificates and Google Play refuses to accept the APK with different certificate.
So if you are on alpha/beta stage, you can always remove the app from Google Play and create it again. If your app is released to production already then it's too late. At least I don't know the way to do so.
Does AdMob and IAP work with CooconIO?
Yes. However you will have to use their plugins. It's absolutely not a big deal. You simply download their C2 plugins and implement it the same way you do it with C2 AdMob and CordovaIAP plugin. Worth to mention that CooconIO works with both managable and non-managable products for IAP and both banners and interstitals for Ads.
Is it hard to switch to CooconIO?
I really thought I'll spend much more time to understand everything but I managed to get everything in one day. However I folowed this ebook https://www.scirra.com/store/ebooks/qui ... ebook-1893 and I recommend you to buy it as well if you want to work with CooconIO. It's very cheap and explains a lot.
APK size.
IntelXDK export is around 22MB bigger then CooconIO export. This is simply because Crosswalk has to be added to the APK. Crosswalk is a kind of a mini web browser which runs your game, so it's a separate program inside your game.
Problems I've encountered while using CooconIO.
Sounds. - In general the basic usage of sound and music works fine. However some functionalities does not work like "silent" mode. But there are always some work-arounds.
Permissions. By default CooconIO adds a lot of permission request to the app like Geolocalization, contacts, SMS etc. So a lot of stuff which 99% of the games won't use anyway. However I've manage to fix that very fast simply by removing config.xml entries in CooconIO web app. So simply saying - just select and click "delete".
Android API requirements. This was very important option for me and I couldn't find it. There is no built-in option in CooconIO web app to set it up. But again I've just had to add some entries to config.xml and it worked like a charm. Here are the entries you need to add if you wan't to set up min and target Android API.
<preference name="android-minSdkVersion" value="19"/>
<preference name="android-targetSdkVersion" value="21"/>
Simply paste them next to other <preference /> nodes.
-= Wrap up =-
To summarise all of my thoughts. I would say that CooconIO is really nice and for the heavy or simply commercial projects I will use CooconIO because it probably have some better performance. But CooconIO gives you possibility to add only 2 apps with the free account. Then you have to pay around $120 annually (monthly payment available as well). So if you have small app which is not heavy and not commercial - I recommend IntelXDK because it's free and can handle small/not heavy games very well with Crosswalk. Otherwise if you have serious project I recommend CooconIO.
And the last word about the very controversial thing which is the splash screen. It is true that CooconIO adds their own splash screen at the start of the game. To me personally it is not a problem at all. First of all it looks really decent. Second thing is that I do like to give credits to everyone who helped me make a game. To people who gave CC3 assets etc. Why wouldn't I give a credit to someone who wraps my game? <img src="{SMILIES_PATH}/icon_e_smile.gif" alt=":)" title="Smile">