Sitemap

Is it really the end of 2-OS Era? — More than 1B HarmonyOS users!

4 min readApr 24, 2025

--

Hi everyone,

If you read my articles but haven’t subscribed yet, I strongly suggest you do so now, because I’ll soon be sharing some amazing news that you won’t want to miss. 😉 Oh, also, if you want to learn iOS Development, I strongly suggest you to checkout my Udemy course by clicking here. You won’t regret. 🤠

And here is the special code for my Medium followers/readers: FORMEDIUM 🫠

Did you read my last 5 articles? 🤔 If not, then here they are: 👀

Ok, now let’s start with our main topic. 🤠

It has already been a long time that mobile development has been kind of a two horse race between Android and iOS. Every one of us picked their side, built their apps, and that was it. But something is changing. We all know and recognise Huawei. From my personal experience, I had one of their Huawei’s devices (Mate 20 Lite) 7 years ago, and I used that device for 3 years. I was very happy with it. Back then, it was using Android. Since 2020, Huawei uses its own OS, and guess what, as of today’s date, more than one billion Huawei devices that use HarmonyOS are sold. Globally, there are around 1B HarmonyOS users. This OS is growing fast, and it has the potential to reshape the landscape.

A New Contender Emerges

During the last quarter of 2024, HarmonyOS overtook iOS in China. Yes, in China, currently 19% of the market uses HarmonyOS while 17% uses iOS. Android still leads globally and also in China, but this shift is significant, and we need to take into consideration that HarmonyOS and iOS are the OS that are used by only one brand, while Android is used by a lot of different expensive and cheap brands that gives it opportunity to lead the market.

HarmonyOS has the same logic as well. It is not just an OS, but it is a platform designed for a connected ecosystem. It aims to provide a seamless experience from smartphones to smart TVs, wearables, and even cars (we know how China is overtaking car market as well). There are some cars that use already HarmonyOS such as: Toyota bZ7, BYD Han, and the AITO M5.

What are the differences between those OS?

I believe that you already know differences between Android and iOS, but still I will explain them here again:

While Android is an open-source, customisable, and different brands can (is) use(ing) this OS, but iOS offers a controlled environment with tight integration between hardware and software. Also, iOS is known for its stability and consistent UX, and it is limited to Apple’s ecosystem.

Here, HarmonyOS takes slightly different approach. The architecture is microkernel. The advantage of it is that it allows for better security and performance. And this OS is designed for distributed computing, so it can run across multiple devices

What is the language of HarmonyOS?

This beauty is called ArkTS. It is a programming language that was designed specifically for HarmonyOS. The base of the language is TypeScript. It is used together with ArkUI (like UIKit on iOS, but UIKit is imperative). ArkUI is a declarative UI framework. ArkUI can be used for all products that use HarmonyOS.

The main goal is to have high performance, so the language is aiming to provide an efficient runtime while supporting modern development paradigms. I know most of you want to see examples in ArkTS. I will also add a comparison of ArkTS with Kotlin and SwiftUI.

Example & Comparison

Let’s keep the tradition and say Hello to the world of HarmonyOS.

ArkTS

@Entry
@Component
export default class HelloHarmony extends View {
build() {
Column() {
Text('Hello, HarmonyOS!').fontSize(28).padding(16)
}
}
}

// Medium defined the language automatically as JS,
// but in fact this is an ArkTS code block.

What do we have in this example. Let me explain each of them:
@Entry: marks the entry point of the app.
@Component: defines a UI component.
Column(): is used to arrange child views vertically.
Text(‘Hello, HarmonyOS!’): displays the text.
.fontSize(28)` and `.padding(16): are used to style the text.

Kotlin

Let’s see how do we implement same thing using Kotlin in below:

import androidx.compose.foundation.layout.Column
import androidx.compose.material3.Text
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.sp
import androidx.compose.ui.Modifier
import androidx.compose.ui.padding

@Preview
@Composable
fun HelloHarmony() {
Column(modifier = Modifier.padding(16.dp)) {
Text("Hello, Android!", fontSize = 28.sp)
}
}

and lovely SwiftUI

import SwiftUI

struct ContentView: View {
var body: some View {
VStack {
Text("Hello, iOS!")
.font(.system(size: 28))
.padding(16)
}
}
}

struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}

Why you — as a developer should pay attention?

The market is expanding, this OS already has momentum of a growing user base, especially in China — this means that there is a new audience to reach. Ignoring HarmonyOS could mean missing out on a significant and expanding market segment. Possibly soon we will see job postings that require ArkTS knowledge under the HarmonyOS developer job posting.

Probably the era of two dominant mobile OS is over. As far as I can see, HarmonyOS has emerged as a serious contender which offers unique features and grows really fast.

If you want to thank me: You have couple of options: clap, comment, share, follow or buy me a coffee. 🙂

Learn iOS Development — Udemy Course

Subscribe to my Youtube channel

Follow me on X

Be Patreon

--

--

CodingRasi
CodingRasi

Written by CodingRasi

I speak 6 human and 5 programming languages. 🥳  iOS Developer. https//github.com/CodingRasi

No responses yet