Apache Cordova is a framework that lets you build mobile applications using HTML5, CSS and Javascript for different mobile platforms. But because the applications you build with this framework live in a layer on the top of the native development tools of the targeted platform, they're slower than equivalent applications that are written using the native development tools. As is mentioned here:

However, the use of Web-based technologies leads some Apache Cordova applications to run slower than native applications with similar functionality.[27] Adobe Systems warns that applications may be rejected by Apple for being too slow or not feeling "native" enough (having appearance and functionality consistent with what users have come to expect on the platform). This can be an issue for some Apache Cordova applications.d

So it seems a good option if you could use some native code in a Cordova application. One way of doing this seems to be devloping a plugin. But again there is a catch(from the last link):

All the main Cordova API features are implemented as plugins

So any plugin you devlop, will have the same problem as the equivalent code in Cordova.
So, is there any way to mix Cordova with some native code that doesn't make the native code as slow as the part built using Cordova?

Recommended Answers

All 3 Replies

I have to guess the issue is speed. If speed is the issue, create your app natively with Android Studio. If you want a web app, you go that way if that's your goal.

In short, pick your goals, find tools, go at it.

Well...yeah...but the good thing about using cordova is that you can build applications for different platforms using the same language. Of course if you use native code you should write in different languages for those portions but at least you write less duplicated code.

Ahh, the old "write once, run everywhere" idea. If that's the goal, you do give up platform, machine specific enhancements. I don't want to cover this old ground but want to encourage you to pick your goals and run towards them FAST before someone else gets there.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, learning, and sharing knowledge.