All smart devices today run on operating systems that are different from each other. Integrating these devices so that they can communicate with each other to accomplish a particular task becomes a tough ask. HarmonyOS helps them collaborate, improving the overall user experience.
HarmonyOS is an operating system (OS) for all the smart devices out there. As its tagline “one as all, all as one” suggests, it is an OS capable of seamlessly running on multiple devices. It can be used in a single device to access multiple devices, which can then all function like a single device at the same time. Let us first understand why it was needed in the first place.
HarmonyOS creates a resource pool (as shown in Figure 1) across all the devices, and using the distributed virtual bus it tries to connect them all. It helps application developers to combine these devices into a single super device. It allows the applications to use the resources from all the devices that are available, which is very useful for the end customer.
Developed and backed by Huawei Technologies, HarmonyOS follows the 1 + 8 + N strategy (Figure 2). Here ‘1’ focuses on devices such as smartphones; ‘8’ covers most of the devices such as eyewear, tablets, PCs, watches, speakers, vehicle terminals, earphones, TVs, etc; and ‘N’ represents all the available IoT devices.
With the Harmony architecture you do not have to install any other application on your mobile in order to operate other devices. That is done automatically by the HarmonyOS Atomic Service. This one feature makes a number of use cases possible.
Fitness and health: You can use your mobile phone for cross-device resource convergence. Devices like fitness bands, phones, weight trackers and treadmills can be collaborated into one super device with a simple integration of virtualisation, which uses HarmonyOS as its backbone. This super device can collect information from all these devices and give its feedback and suggestions.
Smart home: With HarmonyOS, home appliances can easily be operated with just the touch of a button. You can preheat your oven and choose the right configurations to prepare a particular dish. You can receive notifications on your device that tell you when you should be changing the filter of your air purifier and when the service is due. It can also help you get an appointment for the same. It is important to note that these applications do not come pre-installed. Depending on the services you need and the type of device you have, the corresponding user interface is provided. The experience remains the same across all devices.
Entertainment: You can stream the desired entertainment content on to bigger screens, use smart speakers, and integrate a microphone – a great collaborative experience. You can control all of this with a single device.
Smart office: It is often difficult for people to move from one corner of the office to another with their laptops. HarmonyOS can help them integrate all their devices such as PCs, phones, laptops and tablets. As a result, they can access the same files from each device and update them from anywhere too. This increased convenience enhances productivity.
Easy travel: Sometimes, while navigating your way to a certain destination you cannot reach the exact location in your car, and may need to walk to do so. HarmonyOS helps you to continue your navigation via your smartphone or a smartwatch.
HarmonyOS’s IDE (integrated development environment) of choice is DevEco Studio, which is based on the IntelliJ platform. This IDE automatically adapts to multiple screen layouts, and also provides previews. You can connect it to multiple hardware and perform live debugging as well. It even lets you use emulators based on different devices. The IDE can be downloaded from https://developer.harmonyos.com/en/develop/deveco-studio/, and helps in creating a unified environment for multiple devices. You can develop a native application in C++, and Atomic Services can be built. Quick development of Feature Abilities and Particle Abilities can be done. Feature Abilities are the UI or user interface based applications, and Particle Abilities are service or data based applications that do not have a UI.
Higher efficiency: Developers do not need to worry about the hardware specifications in order to create an application, as the OS is hardware-independent. Multiple-language support is available such as Java, JS, C++ or C. They can write minimal code lines yet create feature-rich applications. Developers can also save time and money by relying on some reusable components that have already been built.
Better consistency: The primary function is consistent, allowing greater control and scalability for developers and a more consistent experience for users.
Field proven code: It consists of code that has been used many times and is already proven in the field. Hence, the likelihood of encountering problems during development lessens significantly.
Easy testing: Since the code is pre-tested, further testing becomes even easier and is done to make sure any new features or sections work well.
On the whole, HarmonyOS has a huge community network supporting 100+ million devices, more than 1.3 million developers and 1700 hardware partners. In India, the ‘Application Library Engineering Group’ is focused on developing innovative ways to reduce the application development life cycle. This community also focuses on filling open source reusable component gaps. It offers training for best practices and provides dedicated mentors for application and component development. You can follow the community at https://github.com/applibgroup/.