Top 5 technologies in cross-platform mobile development

Today, mobile development is an integral part of any application. According to Statista, the number of cell phone users worldwide is predicted to grow to over 7 billion in 2025, significantly increasing the percentage of application downloads. According to StatCounter, as of February 2024, 69.94% of the global mobile market was held by Android and 29.32% by iOS.

Top 5 technologies in cross-platform mobile development

Let’s start our journey.

Flutter

Flutter is a framework from Google designed to create an application for several platforms simultaneously. In case of a certain complexity of tasks, it is still necessary to finish writing a part of the code separately for each platform.

In the case of Flutter, the developer does not have the opportunity to use the usual libraries and tools because the languages used in Flutter development are different from those used in native mobile development.

Code written with Flutter is embedded in a native application. Dart’s own virtual machine graphics engine is used for the UI. There are both pros and cons to this approach.

At the moment, not all the platforms’ capabilities can be realized with Flutter, but gradually, more and more libraries for working with native components are appearing. For example, working with hardware features often has to be realized at the OS level. This is especially true when a new OS version with new features is released.

This technology is by Alibaba, KFC, eBay, and Nubank.

React Native

React Native is a framework from Facebook that is also aimed at creating a single application for multiple operating systems. Compared to KMM and Flutter, this technology is old but still popular with customers and developers.

React Native interacts with the system through a so-called “bridge” that passes instructions to the main thread. The bridge negatively affects the speed of the application. However, it is now being abandoned in favor of JSI (JavaScript Interface), which performs better.

If we talk about Flutter and React Native, the latter has been around longer. The framework components are more adaptive to a particular OS, although their number is less than in Flutter.

This technology is used in companies like Microsoft and Discord.

Kotlin Multiplatform Mobile (KMM)

Kotlin Multiplatform Mobile (KMM) is another cross-platform technology from the creators of Kotlin.

Basically, business logic code is brought out with its help. The layer of views and repositories are written in a platform-dependent way. With proper experience and good knowledge of architecture, patterns, and object-oriented programming (OOP), you can take out some code from other layers as well. 

The number of KMM libraries is constantly growing. For example, there are libraries for working with databases, working with the life cycle of components (both in Android and iOS), simplifying the work on the application, and improving the code quality. When using KMM, you have to work with the native UI of the operating system.

This technology is used in such companies as Netflix and Philips. With KMM, cross-platform part and Android is developed in Kotlin/Native, iOS – in Objective-C/Swift.

Cordova

Cordova is a framework that uses HTML, CSS, and JS. Just like KMM, Cordova enables developers to share common application logic across different platforms. With Cordova, platform-specific code for views and other components may need to be written separately.

In Cordova development, the cross-platform part is developed using web technologies, while platform-specific implementations are handled through Cordova’s plugin architecture.

Xamarin

Xamarin is a platform from an independent company that Microsoft bought out. It creates cross-platform apps with .NET. However, UI is developed separately for each OS.

In general, its popularity is on the decline. Nevertheless, some programmers continue to use it.

Xamarin is executed in a managed environment. It allows you to use different libraries. Xamarin is based on the .NET platform implementation – Mono.

Development is done in Visual Studio or Xamarin Studio. For Visual Studio, you need to buy a license. This platform provides good performance, but there are some disadvantages. We mean limited access to Open Source libraries, larger application size, etc.

This technology is used in such companies as GitHub, Slack, and Trello. As for the languages used, the main one is C#. Other .NET languages (F#, Visual Basic, etc.) are also allowed.

What is PWA?

Microsoft created PWA technology in 2000, but it became widely known in 2015, thanks to Google Chrome’s expansion of features (Service Worker and Web App Manifest). In 2018, iOS 11.3 introduced support for Service Worker in the mobile version of Safari.

Service Worker is a JavaScript file that runs in the background as a standalone service. Essentially, a PWA is a kind of merger of a browser and a native app.

Among the PWA advantages are working offline, lightweight, fast startup, remote update, and installing without Google Play and App Store. At the same time, installing a shortcut on the home screen is possible. From 2019, such applications can be added to Google Play and App Store.

The PWA disadvantages include problems of interaction with the OS (stores files no larger than 50 MB, no access to many Apple services, Siri, support only from version 11.3, problems with notifications), no full access to the hardware capabilities of the OS (there are problems with Bluetooth, contacts, calendar), limited offline work, low performance.

OS-System – your reliable mobile app development partner

Our OS-System team is highly versed in mobile application development, especially cross-platform. One of the most interesting such projects was Pickup Sports:

  • Client. A sports start-up for children and parents that aims to gamify organizing active games, promote healthy lifestyles, and enhance communication.
  • Customer challenge. Develop a mobile app enabling parents to register, add children, organize and join sporting activities, and locate nearby parents for collaborative game organization.
  • Business challenge. Create a mobile app for parents to register, add children, organize, and participate in sports activities focusing on specifying locations. Previous attempts at development were hindered by an abundance of ideas surpassing development speed.
  • Solution. Our team rebuilt the app from scratch due to scalability issues and departure from best practices. We provided design and development services for the backend, mobile app, and admin panel, implementing various features.

Through collaboration, we addressed the client’s needs and delivered a robust solution for fostering active play and healthy lifestyles among children and parents. Feel free to contact us to discuss the development of your cross-platform application.

5 2 votes
Article Rating
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments

Subscribe to us