I am planning to develop an mobile app (my first one) for multiple operation systems (including Android, IOS, WindowsPhone) - in the wild internet I found a framework called phonegap, as a possibility solution to minimize the development process. I understand the advantages phonegap has - but could not find real downsides... 1.) So the question is why should I not use phonegap?
2.) Is phonegap only slower, because it is wrapped inside the OS, if yes how much slower? I mean can you really tell the differentce between a native app and phonegap, or is only slower when you need hardware acceleration e.g. for gaming?
A few more informations about the project. Currently I have several '.Net' services and provider, communicating via WCF. The App should be able to receive and send video streams and audio data from and to a service, such as a provider would do.
3.) Is it possible to use phonegap for that, or shall I stick to native apps?
PhoneGap APIs are built using JavaScript which is not multi-threaded and hence do not support background processing. Access advanced native functionality: A number of native APIs are not yet supported by PhoneGap's APIs. Complex Business Logic: A number of applications such as enterprise applications are quite complex.
Since 2008, the industry and market has evolved and PhoneGap usage has declined. “In the context of these developments and declining PhoneGap usage, Adobe is focusing on providing a platform that enables developers to build, extend, customize and integrate with Adobe products,” the company wrote in a post.
As a result, Adobe stopped development for PhoneGap and its support for Apache Cordova. However, to give their customers a chance to migrate from Adobe PhoneGap to other alternatives, they will keep PhoneGap Build active until October 1st, 2020.
All cross-platform frameworks (including HTML) generally share the same advantages and disadvantages.
Advantages:
Disadvantages:
For best results targeting multiple platforms, I recommend the following:
Design your core logic (the part that doesn't use any UI) cleanly, with a well-defined API. Make it general enough to be fairly easily ported between environments. (Is SQLite really that different in Objective C vs. Java?)
Design your UI following the best practices of your target platforms so that it looks great (and fits in) on each one. (For Android, see http://developer.android.com/design) Have the UI interact with the core logic via the API you created.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With