With careful planning around 50%-80% code reuse can be realized across-platforms. This results in faster development and reduced costs.
Cross-platform development provides more benefits during the maintenance period. If a bug is found in a common codebase it needs to be fixed only once.
Unit tests are required to be written only once for the common code, hence the saved budget can be used to write more thorough unit tests.
It is possible to use existing programming talent rather than learning platform specific development language.
Ideal for B2B apps and business process automation apps, where time to deployment and efficient utilization of resources is more important than sleek look and feel.
Cons of cross-platform mobile app development
In general, phones are not as powerful as desktops when it comes to raw processing power. Many mid-level and entry level phones don’t have enough hardware power to perform smooth HTML5 animations. Thus, HTML5 based apps consume significantly more battery compared to native apps or native cross-platform applications.
Usually, HTML5 hybrid apps depend on callback-style programming to communicate with native plugins, which makes the code unnecessarily complicated. Also for some tasks, this might lead to impractically slow solutions.
Native cross-platform app SDKs are not mature yet. GUI needs to be coded multiple times to obtain platform specific look and feel.
Many successful apps are developed as native apps (either Android or iOS) because designing and building an app for multiple platforms with platform-specific user experience is too difficult.