Live data from Hacker News

Apache Cordova: after 10 months, I won't using it anymore

geekcoder.org

31–40 of 96 posts

Re: Apache Cordova: after 10 months, I won't using it anymore

#31
post #17

This is a very bad article. The real problems with Cordova are: * Core functionality is broken between releases. If you ask in the IRC support channel, they will even tell you not to update if things work well! What if I need a new feature? * Documentation is absurdly horrible or even plain wrong. I have been told several times to refer to the source code to find out how something works. * If you face any problem, ch…

This would of made for a much better article. I couldn't agree more! I'm currently working on a Hybrid React app, performance issues aside the real issue is documentation and support. As soon as you are beyond a basic web app wrapped in a container you realise quickly Corodova will always be a second class citizen. On a more positive note React Native ( https://facebook.github.io/react-native/ ) is mind blowingly ama…

I'm looking to use something like Cordova to develop a fairly simple app for both Android and ios,

so far it looks like React is for Mac only, looking at https://facebook.github.io/react-native/docs/getting-started... ?

Edit: It looks like i'm missing something as I can see Android apps built with it on http://www.reactnative.com/built-with-react-native/

Re: Apache Cordova: after 10 months, I won't using it anymore

#32
post #12

Hmmm, I note in his closing para: "Facebook wrote a good article when they have decided to switch from a web app to a native one." A three year old blog post from Facebook. Now the circle has turned with React and React Native…

React native uses UI widgets from plateform SDKs, so Facebook point still stands. Their hybrid app sucked and they lost real money as the result of this.

Re: Apache Cordova: after 10 months, I won't using it anymore

#33

FUD. Ever heard of WebSQL for storing your data? After 10 months, you should have been able to work around nearly anything you mention in your article.

> you should have been able to work around

The problem right here, to have to "work around" for 10 month.

Re: Apache Cordova: after 10 months, I won't using it anymore

#34
post #26

Earlier quoted context omitted.

> I wanted to have a native UI, so I tested angular-material and Polymer Aren't Web Components still heavily polyfilled in most mobile browsers? I'm wondering how much of the problem was due to the Polymer library than Cordova proper.

I thought that would make sense, too. But I found them to be working OK in Chrome on Android, so I thought I could give it a try. I should have said that I wouldn't create any hybrid mobile apps anymore, not just Cordova. That's not because I don't like it - it's simply because the other options work just as good for me. At least for now - can't say anything about the future.

Right.

> I should have said that I wouldn't create any hybrid mobile apps anymore, not just Cordova

I must admit, I'm still quite enamored with them, if only for development time and maintainability. I'd rather not develop 3 different apps for desktop (browser), Android and iOS. As I said elsewhere, I'm waiting to rely on App Cache instead of Cordova in the future.

Re: Apache Cordova: after 10 months, I won't using it anymore

#35
post #2

So I was reading this, and the only things that kept repeating in my mind were "Ionic, Crosswalk, Webworkers, Ionic, Crosswalk, Webworkers..." (Yes I know Crosswalk is Android only, but it works wonders).

Big Ionic fanboy here, but it's not all sunshine and rainbows. You absolutely need Crosswalk if you want to publish on Android. The default WebView performance blows, and is so inconsistent. We have two LG G3's with different WebView versions!

There are a few downsides though. Added complexity/possibility for bugs, and APK size.

The Crosswalk website says it should add 10-15MB to your. In our app, it's adding over 55MB to the installation size. These numbers are based on unminified JS/HTML (and I think we still have some outdated resources sitting in www/img/), but iOS: 18.0MB, Android: 78.4MB.

And then there's the additional bugs. Did you know localStorage is completely broken in the current "stable" release of Crosswalk? Once you kill/reopen your app, all storage is cleared. You'll need the latest Canary build if you want localstorage to work (and who knows what's broken in that build).

Re: Apache Cordova: after 10 months, I won't using it anymore

#37
post #26

Earlier quoted context omitted.

> I wanted to have a native UI, so I tested angular-material and Polymer Aren't Web Components still heavily polyfilled in most mobile browsers? I'm wondering how much of the problem was due to the Polymer library than Cordova proper.

I thought that would make sense, too. But I found them to be working OK in Chrome on Android, so I thought I could give it a try. I should have said that I wouldn't create any hybrid mobile apps anymore, not just Cordova. That's not because I don't like it - it's simply because the other options work just as good for me. At least for now - can't say anything about the future.

> But I found them to be working OK in Chrome on Android, so I thought I could give it a try.

They probably would have run well with the Crosswalk browser plugin, then. It's basically bundling the latest version of Chrome within your app, so all your users have a consistent and up-to-date WebView, instead of whatever the OEM decided to lock it at.

Of course, that doesn't fix every issue, and adds a few more of its own. But really, any non-Crosswalk benchmarks/performances tests on Android can be simplified to: It's slow as hell.

Re: Apache Cordova: after 10 months, I won't using it anymore

#38
post #28

On performance, the new WKWebView on iOS (with Nitro JS + GPU rendering, including WebGL), and the Chromium webview on Android 5.0+ (or Crosswalk for Android 4.0+, similar features all round), radically changes the performance story. It's almost identical to the system browsers now. Facebook's comments about HTML5 were back in the dark ages when the webviews generally used horribly slow software rendering and didn't…

Does WKWebView work with file:/// urls needed by Cordova?

Is there a reason they don't ship with a simple web server to server out the static files, similar to `python -m SimpleHTTPServer`?

Re: Apache Cordova: after 10 months, I won't using it anymore

#39
For doing database work in a separate thread, you used to be able to access WebSQL from a web worker on both iOS and Android, but sadly that's been dropped as of Chrome 39 and iOS 9: https://github.com/pouchdb/pouchdb/issues/2806

Also I don't believe you can use the SQLite Plugin in a web worker either: https://github.com/litehelpers/Cordova-sqlite-storage/issues...

Luckily, you can still access IndexedDB from a web worker on both platforms (if you are able to use Safari's partial implementation). Also depending on what kind of work you're doing in the database, most of the action happens at the native level rather than the (DOM-blocking) JS level.

Re: Apache Cordova: after 10 months, I won't using it anymore

#40
post #12

Hmmm, I note in his closing para: "Facebook wrote a good article when they have decided to switch from a web app to a native one." A three year old blog post from Facebook. Now the circle has turned with React and React Native…

I'm not sure it has though – React Native apps are demonstrably not web apps. It's a very different approach.

I guess my thought was that in contrast to the thrust of the blog post - FB is going back to the "build as much of it as you can with one codebase (React) and native-app-ify it as late as possible (with React Native)" approach.

React came before React Native. In one sense, React Native is just a tool to turn React HTML5/Javascript webapps into native ones - in a similar way to maybe an AngularJS webapp turned "native" with Cordova.

Post reply on HN