Addressing the jQM concern, this is why we built Ionic (http://ionicframework.com/). It's still alpha and we have a ways to go, but the UI is more "native" centric and we have been improving animation performance over the last week, and on new iOS devices it's hard to tell the difference between simple native app and the hybrid one. Hopefully you'll find it a better solution for hybrid apps.
I tried Ionic on Friday last week. The example code didn't work 'out of the box', and there isn't any documentation explaining how to use it. I tried with PhoneGap, with Cordova and running it in a browser both with and without Ripple. I got pretty much nowhere. Contrast that to trying jQM 1.4 RC1 and having a working example running on my phone in about half an hour with Phonegap.
Open source projects live and die on their community, which springs from examples and documentation that people can learn from. I like the look of Ionic, especially if it was decoupled from Angular, but until it's possible to actually do something with it I (and I imagine many others) can't help out with it.
tl;dr Documentation is critical. Write some, don't just rely on your "doc generator".
Iconic looks really nice, and I especially like the component documentation.
When it comes to the overwhelming number of mobile js frameworks its hard to get an idea of speed without running each of the demos individually and comparing. Do you have any rough stats compared to Sencha?
don't be mystified. all of this comes from your lack of knowledge and experience of native development. if it works in a webview then making a 'native' app out of it is not going to be complicated - you make something with a webview and the html or whatever other source data in the package.
its not magic, its not even hard, you just happen to not know about how it works... if you are interested this is easy to fix with google and experimentation. :)
knowing about android sdk versions is something you would also know if you were an android developer. its everywhere from the first time you install an sdk or ndk - i agree that Google suck at developer tools and docs, absolutely 110%, and this is a good example of that - a lot of their tools I consider 'unshippable' they are so bug riddled and unusable - but thats a tangent.
i do wonder though why even use a native app like this? isn't a web app more friendly? you certainly won't get any of the performance benefits of native code without some real heavy lifting on the part of the framework/library/sdk. isn't a landing page asking you to download a native app just annoying? i know its popular but its just a UX fail however I look at it...
> i agree that Google suck at developer tools and docs, absolutely (...) a lot of their tools I consider 'unshippable' they are so bug riddled and unusable
This absolutely mystifies me. Especially after coming in from the iOS development stack, the android sdk's, simulator, et al, are shockingly bad. And it's been YEARS now.
Yeah, that's my biggest issue with these webapps, people who should not be doing this stuff is doing it, and have no idea what they're doing...
I'm an iOS dev and still knew how the android sdk version stuff works...
I really like the idea of these multi-platform bridges.
But in reality the ones that I have seen suffered from being terribly slow. The last app demo that I saw using phonegap had 3-5 second loading bars come up every time a button was pressed. This was on Android so I am not sure if the platform was to blame or not.
While phonegap is a bridge between a lot of functionalities, not all features has been created equals.
The app is only has good has the html5 app behind it. On android it's tricky, we just did a test run for our mobile app & we have weird issues with a lot is samsung phones while other phones perform perfectly.
We also decided to remove animations on android for all phones below android 4.2 because the browser was to slow to handle them perfectly.
I work at a big bank and we're developing a very complex application using only jQuery Mobile and Angular JS & fastclick.js. If properly executed, the app runs beautifully and very, very smoothly. Even as a webapp it performs exactly as native.
JQM is beautiful if you really know how to use and know what you're doing.
We're deploying on 20 devices with only one code base and it works flawlessly, it's amazing. We only use native to patch holes or do things we can't do easily with html/css/js.
I have tried cocoonJS and phonegap side by side with my app and cocoonJS was much faster, however it was buggy so I went for phonegap. I didn't really notice a different speed between chrome and phonegap, but the lack of address bar at the top made the graphics much nicer with phonegap over viewing it in Chrome.
I can tell the browser used by Phonegap is not as good as Chrome. It doesn't popup the keyboard on text fields and things like that, which the Galaxy S2 don't do either.
I am hoping the bugs in Coocoon get fixed as that has the potential to be the best option.
It absolutely is in android 4.2. After that it depends on the android version.
My app have perfect smooth transitions in the chrome browser. yet in the phonegap webview animations are slower & I have rendering bugs I never saw in chrome.
Can't find direct sources right now, but it's fixed in android 4.4, you get chrome
I really don't like the fact that they tout using VS to create and publish apps right there on the homepage however you have to purchase the ultimate package at $119 a month in order to do this. you would think that every package would include this feature if its their main advertised feature.
I built Fitwatchr for Fitbit (http://www.fitwatchr.com/apps.html) using PhoneGap Build and absolutely love it. I can develop locally in Chrome, switch between Android/iOS using the DevTools, then deploy using Build. Coupled with Kendo UI Mobile, which auto translates the UI of your app to fit the platform, it took days to get a basic prototype running instead of weeks. Highly recommended!
Totally agree with the author here. Being primarily an Android developer I hate when I need to get access to a Mac to anything iOS related. Phonegap Build solves this problem. I work for avocarrot.com and I managed to do a Phonegap wrapper of our iOS SDK with the build service only using my linux machine.. Pretty awesome!
Now, this is pie-in-the-sky thinking, but I'd love to see something like Xamarin, that uses JS (for logic) and HTML/subset of CSS (for presentation) that builds cross-platform using native widgets.
I think this will stay a dream for a very long while. If Xamarin would create controls based on the lowest common denominator of each platform (with regards to functionality), the capabilities of said controls would be very limited indeed, likely only useful for the most basic of apps.
Converts an HTML5 canvas-based app to use native graphics routines. I haven't used it but been following it for over a year since the approach seems promising.
BTW, a similar thing exists for the ImpactJS game engine (Ejecta), but it only converts to iOS: http://impactjs.com/ejecta
Actually I would love to hear if anyone has experience with either of these.
[+] [-] yesimahuman|12 years ago|reply
[+] [-] onion2k|12 years ago|reply
Open source projects live and die on their community, which springs from examples and documentation that people can learn from. I like the look of Ionic, especially if it was decoupled from Angular, but until it's possible to actually do something with it I (and I imagine many others) can't help out with it.
tl;dr Documentation is critical. Write some, don't just rely on your "doc generator".
[+] [-] davidjhamp|12 years ago|reply
When it comes to the overwhelming number of mobile js frameworks its hard to get an idea of speed without running each of the demos individually and comparing. Do you have any rough stats compared to Sencha?
[+] [-] aerialcombat|12 years ago|reply
[+] [-] jheriko|12 years ago|reply
its not magic, its not even hard, you just happen to not know about how it works... if you are interested this is easy to fix with google and experimentation. :)
knowing about android sdk versions is something you would also know if you were an android developer. its everywhere from the first time you install an sdk or ndk - i agree that Google suck at developer tools and docs, absolutely 110%, and this is a good example of that - a lot of their tools I consider 'unshippable' they are so bug riddled and unusable - but thats a tangent.
i do wonder though why even use a native app like this? isn't a web app more friendly? you certainly won't get any of the performance benefits of native code without some real heavy lifting on the part of the framework/library/sdk. isn't a landing page asking you to download a native app just annoying? i know its popular but its just a UX fail however I look at it...
[+] [-] barclay|12 years ago|reply
This absolutely mystifies me. Especially after coming in from the iOS development stack, the android sdk's, simulator, et al, are shockingly bad. And it's been YEARS now.
[+] [-] Sephiroth87|12 years ago|reply
[+] [-] davidjhamp|12 years ago|reply
Phonegap build is nice if you don't use any prosperity /closed source plugins.
[+] [-] wil421|12 years ago|reply
But in reality the ones that I have seen suffered from being terribly slow. The last app demo that I saw using phonegap had 3-5 second loading bars come up every time a button was pressed. This was on Android so I am not sure if the platform was to blame or not.
[+] [-] posabsolute|12 years ago|reply
The app is only has good has the html5 app behind it. On android it's tricky, we just did a test run for our mobile app & we have weird issues with a lot is samsung phones while other phones perform perfectly.
We also decided to remove animations on android for all phones below android 4.2 because the browser was to slow to handle them perfectly.
[+] [-] Sephiroth87|12 years ago|reply
[+] [-] tudorizer|12 years ago|reply
[+] [-] nezza-_-|12 years ago|reply
[+] [-] rfnslyr|12 years ago|reply
JQM is beautiful if you really know how to use and know what you're doing.
We're deploying on 20 devices with only one code base and it works flawlessly, it's amazing. We only use native to patch holes or do things we can't do easily with html/css/js.
[+] [-] codehaha|12 years ago|reply
Is that right? Is web browser used by WebView a different thing that a default Android browser?
[+] [-] tlarkworthy|12 years ago|reply
I can tell the browser used by Phonegap is not as good as Chrome. It doesn't popup the keyboard on text fields and things like that, which the Galaxy S2 don't do either.
I am hoping the bugs in Coocoon get fixed as that has the potential to be the best option.
[+] [-] posabsolute|12 years ago|reply
My app have perfect smooth transitions in the chrome browser. yet in the phonegap webview animations are slower & I have rendering bugs I never saw in chrome.
Can't find direct sources right now, but it's fixed in android 4.4, you get chrome
http://www.mobilexweb.com/blog/android-4-4-kitkat-browser-ch...
[+] [-] Sephiroth87|12 years ago|reply
[+] [-] gchokov|12 years ago|reply
[+] [-] rip747|12 years ago|reply
[+] [-] dotnetkow|12 years ago|reply
[+] [-] patatino|12 years ago|reply
[+] [-] dotnetkow|12 years ago|reply
[+] [-] uptown|12 years ago|reply
[+] [-] krrishd|12 years ago|reply
Actually, its free for anything that can be hosted publicly and open-source on a Git repository
[+] [-] p_papageorgiou|12 years ago|reply
[+] [-] patatino|12 years ago|reply
[+] [-] Happymrdave|12 years ago|reply
[+] [-] dan_sim|12 years ago|reply
[+] [-] girvo|12 years ago|reply
Hey, one can dream, can't they?
[+] [-] wsc981|12 years ago|reply
[+] [-] johnyzee|12 years ago|reply
Converts an HTML5 canvas-based app to use native graphics routines. I haven't used it but been following it for over a year since the approach seems promising.
BTW, a similar thing exists for the ImpactJS game engine (Ejecta), but it only converts to iOS: http://impactjs.com/ejecta
Actually I would love to hear if anyone has experience with either of these.
[+] [-] fleshgolem|12 years ago|reply
[+] [-] untog|12 years ago|reply
[+] [-] mariolorente|12 years ago|reply