HarmonyOS: nədir, sistem arxitekturası və ArkUI-də inkişaf

Müəllif: IT Sectr Dərc olunub: 2026-02-07 Oxuma vaxtı: 11 dəq

HarmonyOS — çarpaz platforma arxitekturasını dəstəkləyən paylanmış mikronüvə üzərində qurulmuş Huawei-nin mülkiyyət əməliyyat sistemidir. Tətbiq inkişafı ArkUI çərçivəsi ilə DevEco Studio mühitində ArkTS və C++ dilində aparılır. Sistem smartfonlar, planşetlər, saatlar və IoT cihazlarının problemsiz inteqrasiyası üçün nəzərdə tutulub. Huawei-yə görə, HarmonyOS dünya üzrə 700 milyondan çox cihazda quraşdırılıb.

Əsas məqamlar

  • HarmonyOS — öz mikronüvəsi və çoxcihazlı arxitekturası ilə Huawei-nin paylanmış OS
  • ArkTS — HarmonyOS ekosistemi üçün TypeScript əsaslı əsas inkişaf dili
  • ArkUI — SwiftUI və Jetpack Compose-a bənzər bəyannaməli UI çərçivəsi
  • DevEco Studio — Emulyator və Preview ilə IntelliJ əsaslı rəsmi IDE
  • Paylanmış arxitektura tətbiqin eyni anda bir neçə cihazda işləməsinə imkan verir

HarmonyOS nədir?

HarmonyOS — Huawei tərəfindən hazırlanmış və ilk dəfə 2019-cu ildə şirkətin yeni cihazlarında Google xidmətlərinə girişin məhdudlaşdırılmasına cavab olaraq elan edilmiş paylanmış əməliyyat sistemidir. HarmonyOS Linux-dan fərqli olaraq öz mikronüvəsi üzərində qurulub və cihazlar arasında problemsiz işləmək üçün nəzərdə tutulub: smartfonlar, planşetlər, ağıllı saatlar, televizorlar, avtomobil sistemləri və IoT cihazları.

Huawei-yə (HarmonyOS Ekosistem Hesabatı, 2026) görə, sistem 300 milyon smartfon daxil olmaqla 700 milyondan çox cihazda quraşdırılıb. Çin bazarı quraşdırmaların 95%-ni təşkil edir. HarmonyOS 5.0-dan (NEXT, 2024) başlayaraq, sistem Android AOSP uyğunluğunu tamamilə tərk etdi — bütün tətbiqlər ArkTS və ya C++ dilində ArkUI istifadə edərək yazılmalıdır.

HarmonyOS-un əsas xüsusiyyəti onun paylanmış arxitekturasıdır: tətbiq eyni anda bir neçə cihazda işləyə bilər, interfeysi ekranlar arasında hərəkət etdirə bilər. Məsələn, istifadəçi telefonda naviqasiyaya başlayır, interfeys isə avtomobil ekranında göstərilir — yenidən kompilyasiya və ya əlavə kod olmadan.

HarmonyOS versiya tarixi

HarmonyOS 1.0 (2019) — smartfonlar üçün deyil, Smart Screen üçün ilk versiya. HarmonyOS 2.0 (2021) — smartfonlar, planşetlər və saatlar üçün açıldı, AOSP tətbiqləri dəstəyi. HarmonyOS 3.0 (2022) — təkmilləşdirilmiş paylanmış arxitektura, Super Device, Multiscreen Collaboration. HarmonyOS 4.0 (2023) — ArkUI 3.0, Live View, təkmilləşdirilmiş performans. HarmonyOS NEXT (5.0, 2024) — AOSP-nin tam tərk edilməsi, yalnız yerli HarmonyOS tətbiqləri.

HarmonyOS versiyasıİlƏsas yenilik
1.02019Smart Screen TV üçün ilk versiya
2.02021Smartfonlar, planşetlər, AOSP uyğunluğu
3.02022Super Device, Multiscreen Collaboration
4.02023ArkUI 3.0, Live View, Celia Voice Assistant
NEXT (5.0)2024AOSP-nin tam tərk edilməsi, mikronüvə, yalnız ArkTS

HarmonyOS arxitekturası: paylanmış mikronüvə

HarmonyOS arxitekturası Android və iOS-dan əsaslı şəkildə fərqlənir. Monolit Linux nüvəsi əvəzinə, HarmonyOS öz mikronüvəsini istifadə edir, minimum imtiyazlı funksiyaları həyata keçirir: yaddaş idarəetməsi, proses planlaşdırması və proseslərarası əlaqə. Bütün digər xidmətlər istifadəçi məkanında işləyir.

Mikronüvə və təhlükəsizlik

HarmonyOS mikronüvəsi təxminən 10.000 sətir koddan ibarətdir (Linux nüvəsi 20 milyondan çoxdur). Kiçik kod bazası daha kiçik hücum səthi deməkdir. Sistem formal yoxlama — nüvə kodunun düzgünlüyünün riyazi sübutu istifadə edir. HarmonyOS biometriya, ödənişlər və şifrələmə açarları üçün aparat səviyyəsində Trusted Execution Environment (TEE) dəstəkləyir. Proseslərarası əlaqə IPC vasitəsilə həyata keçirilir, Android-də Binder-dən 5 dəfə daha məhsuldardır.

Dörd arxitektura qatı

HarmonyOS arxitekturası dörd qatdan ibarətdir: Kernel Subsystem (mikronüvə + sürücülər), System Service Layer (sistem xidmətləri: paylanmış verilənlər, fayl sistemi, təhlükəsizlik), Framework Layer (ArkUI, multimedia, telefoniya, AI xidmətləri), Application Layer (istifadəçi tətbiqləri). Hər qat IPC vasitəsilə alt qatdan təcrid olunub.

Paylanmış fayl sistemi

HarmonyOS bütün istifadəçi cihazlarının yaddaşını vahid virtual məkanda birləşdirən Paylanmış Fayl Sistemi (DFS) təqdim edir. Tətbiq fayllara cihaz göstərmədən URI vasitəsilə daxil olur — sistem sorğunu faylın fiziki olaraq saxlandığı cihaza yönləndirir. DFS ucdan-uca şifrələmə və tez-tez istifadə olunan verilənlərin avtomatik replikasiyasını dəstəkləyir.

cpp
// HarmonyOS paylanmış fayl sistemi ilə iş
#include <dfs/storage_manager.h>
#include <uri/uri_helper.h>

using namespace OHOS::Storage;

// Paylanmış cihazda fayl URI əldə etmə
Uri GetDistributedFileUri(const std::string& localPath) {
    DistributedFileManager manager;
    auto deviceList = manager.GetOnlineDevices();

    for (const auto& device : deviceList) {
        Uri uri = manager.GetFileUri(device.deviceId, localPath);
        if (uri.IsValid()) {
            return uri;  // Fayl cihazlardan birində tapıldı
        }
    }
    return Uri::Empty();
}

// Uzaq cihazdan verilən oxuma
std::string ReadDistributedFile(const Uri& uri) {
    DistributedFile file(uri);
    if (!file.Open(OpenMode::READ_ONLY)) {
        return "";
    }

    char buffer[4096];
    size_t bytesRead = file.Read(buffer, sizeof(buffer));
    file.Close();

    return std::string(buffer, bytesRead);
}

Nümunədə, DistributedFileManager istifadəçinin bütün onlayn cihazlarında faylı axtarır və paylanmış URI qaytarır. DistributedFile tətbiq üçün şəffaf şəkildə, IPC vasitəsilə uzaq cihazda faylı fiziki olaraq açır. Tərtibatçı verilənlərin harada saxlandığını bilməyə ehtiyac duymur — sistem sorğunu avtomatik yönləndirir.

ArkUI və ArkTS: interfeys inkişafı

ArkUI Huawei tərəfindən hazırlanmış HarmonyOS-un bəyannaməli UI çərçivəsidir. İnterfeys SwiftUI (iOS) və ya Jetpack Compose (Android) kimi reaktiv verilən bağlaması olan komponentlər iyerarxiyası kimi təsvir olunur. ArkTS əlavə statik tipləmə və @Component, @State, @Prop, @Link dekoratorları vasitəsilə ArkUI ilə inteqrasiya ilə TypeScript əsaslı inkişaf dilidir.

Əsas ArkTS konsepsiyaları

ArkTS UI çərçivəsi uyğunlaşması üçün TypeScript-i genişləndirir: @Component — UI komponentini bəyan etmək üçün dekorator, build() — UI elementləri ağacını qaytaran məcburi metod, @State — dəyişiklikləri avtomatik olaraq komponenti yenidən çəkən reaktiv dəyişən, @Prop — valideyndən giriş xüsusiyyəti, @Link — ikitərəfli bağlama. Bütün ArkUI komponentləri dəyişdiricilərlə (.width, .height, .backgroundColor) zəncir sintaksisi istifadə edir.

java
// ArkTS — ArkUI-da istifadəçi profil ekranı
@Component
struct ProfileScreen {
    @State userName: string = "Anna Petrova";
    @State avatarUrl: Resource = $r("media.avatar_default");
    @State isLoading: boolean = false;
    @Prop onEditClick: () => void;

    aboutToAppear(): void {
        this.loadUserData();
    }

    async loadUserData(): Promise<void> {
        this.isLoading = true;
        try {
            const data = await UserService.getProfile();
            this.userName = data.name;
            this.avatarUrl = data.avatarUrl;
        } catch (error) {
            console.error("Yükləmə xətası", error);
        } finally {
            this.isLoading = false;
        }
    }

    build(): void {
        Column() {
            if (this.isLoading) {
                LoadingProgress()
                    .width('50%')
                    .height('50%');
            } else {
                Stack({ alignContent: Alignment.Center }) {
                    Image(this.avatarUrl)
                        .width('100%')
                        .height('100%')
                        .objectFit(ImageFit.Cover);

                    Column() {
                        Text(this.userName)
                            .fontSize('24fp')
                            .fontWeight(FontWeight.Bold)
                            .fontColor(Color.White);

                        Button("Redaktə et", {
                            type: ButtonType.Capsule,
                            stateEffect: true
                        })
                            .onClick(() => {
                                this.onEditClick();
                            })
                            .margin({ top: '12vp' });
                    }
                    .alignItems(HorizontalAlign.Center)
                    .width('100%');
                }
                .width('100%')
                .height('300vp');
            }
        }
        .padding('16vp')
        .width('100%')
        .height('100%');
    }
}

// Tətbiq giriş nöqtəsi
@Entry
@Component
struct MainApp {
    build(): void {
        Column() {
            ProfileScreen({
                onEditClick: () => {
                    console.info("Profil redaktorunu aç");
                }
            });
        }
        .width('100%')
        .height('100%');
    }
}

ArkTS-də ProfileScreen komponenti nümayiş etdirir: reaktiv dəyişənlər üçün @State, giriş callback üçün @Prop, Column/Stack/Text/Image/Button əsas UI komponentləri kimi, async/await vasitəsilə asinxron verilən yükləməsi. Yükləmə zamanı LoadingProgress göstərilir. Bütün ölçülər vp (virtual piksel) ilə göstərilir — iOS-da pt və ya Android-də dp kimi adaptiv vahidlər.

Müxtəlif cihazlara uyğunlaşma

ArkUI ekran genişliyinə uyğun Qırılma Nöqtələri (xs, sm, md, lg, xl) sistemi vasitəsilə responsive dizaynı dəstəkləyir. Komponentlər telefondan planşetə və ya saata keçərkən avtomatik olaraq yenidən təşkil olunur. GridRow və GridCol qırılma nöqtəsindən asılı olaraq sütun sayını dəyişən adaptiv konteynerlərdir. Ölçü vahidləri: vp (virtual piksel), fp (şrift pikseli — şrift ayarları ilə miqyaslanır), lpx (saatlar üçün məntiqi piksel).

Cihaz növüQırılma nöqtəsiDiaqonalVahid
Ağıllı saatxs1.2"–2.0"lpx
Smartfonsm4.7"–6.9"vp
Planşetmd7.0"–12.0"vp
Noutbuklg13.0"–16.0"vp
Monitor / TVxl24.0"–65.0"vp

DevEco Studio və inkişaf alətləri

DevEco Studio IntelliJ IDEA Community Edition əsasında HarmonyOS üçün rəsmi inteqrasiya olunmuş inkişaf mühitidir (IDE). ArkTS və C++ dəstəyi ilə kod redaktoru, vizual ArkUI redaktoru (sürüklə və burax), HarmonyOS cihaz emulyatoru, ani UI baxışı üçün Preview və performans analizi üçün Profiler daxildir.

HarmonyOS emulyatoru

DevEco Studio QEMU əsaslı emulyator daxildir, smartfonlar (müxtəlif ekran ölçüləri), planşetlər, saatlar və televizorları dəstəkləyir. Emulyator paylanmış mühiti simulyasiya edir: bir neçə virtual cihaz işlədə və cihazlararası qarşılıqlı əlaqəni test edə bilərsiniz. Emulyator virtualizasiya tələb edir (Windows-da Hyper-V, Linux-da KVM).

Preview və Live Preview

ArkUI Preview qurma və ya emulyator başlatmadan ani UI baxışı funksiyasıdır. Kod dəyişiklikləri 1-2 saniyə ərzində Preview-də görünür. Bütün standart komponentlər və animasiyalar dəstəklənir. Preview uyğunlaşma qabiliyyətini test etmək üçün müxtəlif qırılma nöqtələri ilə işləyir. Live Preview real cihazda test üçün USB və ya Wi-Fi vasitəsilə real cihaza qoşulur.

HarmonyOS SDK və API

HarmonyOS SDK daxildir: ArkUI (UI komponentləri), Multimedia Kit (audio/video çəkmə və oxutma), Connectivity Kit (Bluetooth, Wi-Fi, NFC), Location Kit (geolokasiya), Sensor Kit (sensorlar), AI Kit (Huawei NPU-da cihazdaxili inferens ilə ML Kit). API versiyaları: API 9 (HarmonyOS 3.x), API 10 (4.x), API 11 (NEXT).

java
// Multimedia Kit vasitəsilə HarmonyOS-da kameranın başladılması
import multimedia.CameraManager;
import multimedia.CameraInput;
import multimedia.PreviewOutput;

@Component
struct CameraView {
    @State isPreviewActive: boolean = false;
    cameraManager: CameraManager = CameraManager.getInstance();
    cameraInput?: CameraInput;
    previewOutput?: PreviewOutput;

    async startPreview(): Promise<void> {
        try {
            // Kamera icazəsinin istənilməsi
            const granted = await Permissions.request("ohos.permission.CAMERA");
            if (!granted) return;

            // Kameranın əldə edilməsi (0 — arxa, 1 — ön)
            const camera = await this.cameraManager.getCamera(0);

            // Kamera girişinin yaradılması
            this.cameraInput = await this.cameraManager.createCameraInput(camera);
            await this.cameraInput.open();

            // Surface-də önbaxışın başladılması (ArkUI XComponent)
            this.previewOutput = await this.cameraManager.createPreviewOutput({
                width: 1920,
                height: 1080
            });
            await this.previewOutput.start();
            this.isPreviewActive = true;
        } catch (error) {
            console.error("Camera error: " + error.message);
        }
    }

    async stopPreview(): Promise<void> {
        await this.previewOutput?.stop();
        await this.cameraInput?.close();
        this.isPreviewActive = false;
    }
}

CameraView komponenti Multimedia Kit ilə işi nümayiş etdirir: Permissions.request vasitəsilə icazə istəmə, CameraManager vasitəsilə kamera əldə etmə, CameraInput və PreviewOutput yaratma. ArkUI Surface (XComponent vasitəsilə) video axınını göstərir. Bütün əməliyyatlar try/catch vasitəsilə xəta idarəetməsi ilə asinxrondur.

Paylanmış tətbiqlər və cihazlararası

HarmonyOS-un paylanmış arxitekturası rəqiblərdən əsas fərqdir. Tətbiq hər biri optimal cihazda işləyən çoxsaylı atom xidmətlərindən (Atomic Services) ibarət ola bilər. İstifadəçi bir cihazda tapşırığa başlayır və konteksti itirmədən digərində davam edir.

Atomic Services və Ability

Atomic Service HarmonyOS-da minimum yerləşdirmə vahididir. Hər xidmət bir və ya daha çox Ability (Android-də Activity-yə bənzər) həyata keçirir. Page Ability — UI ilə ekran, Service Ability — fon tapşırığı, Data Ability — verilənlərə giriş. Tətbiq Ability-ni başqa cihaza həvalə edə bilər: məsələn, UI planşetdə göstərilir, AI emalı isə NPU olan telefonda işləyir.

Paylanmış Verilən İdarəetməsi

Paylanmış Verilən İdarəetməsi (DDM) sistemi tətbiq vəziyyətini cihazlar arasında sinxronlaşdırır. DDM Paylanmış Verilən Obyektləri — bütün istifadəçi cihazlarında avtomatik replikasiya olunan reaktiv obyektlər istifadə edir. Bir cihazda verilən dəyişiklikləri dərhal bütün digərlərində əks olunur. DDM şifrələməni dəstəkləyir və şəbəkə bağlantısını (Bluetooth, Wi-Fi, mobil verilənlər) nəzərə alır.

TexnologiyaMəqsədBənzəri
Distributed Data ObjectsCihazlar arasında reaktiv verilən sinxronizasiyasıiCloud / Firebase
Distributed File SystemCihazlararası vahid fayl məkanıiCloud Drive
Ability DistributeEkranın başqa cihaza həvalə edilməsi
Super DeviceCihazları vahid sistemdə birləşdirməApple Continuity
Multiscreen CollaborationBir tətbiqlə çoxsaylı ekranlarda işləməSidecar (iPad + Mac)

Super Device

Super Device — 7-yə qədər Huawei cihazını vahid hesablama mühitində birləşdirməyə imkan verən HarmonyOS funksiyasıdır. İstifadəçi Super Device interfeysində cihaz ikonlarını sürükləyir: dinamiklər audio çıxışı olur, planşet ikinci ekran olur, saat telefonda fitness tətbiqi üçün ürək döyüntüsü monitoru olur. Bütün cihazlar 5 ms-dən az gecikmə ilə Distributed Bus vasitəsilə sinxronlaşır.

AppGallery və tətbiq nəşri

Huawei AppGallery HarmonyOS-un rəsmi tətbiq mağazasıdır, Google Play və App Store-dan sonra dünyada üçüncü ən böyükdür. Huawei-yə (2026) görə, AppGallery-nin 580 milyondan çox aylıq aktiv istifadəçisi var. Tərtibatçı qeydiyyatı fiziki şəxslər üçün pulsuzdur (Apple-ın 99 dollarından fərqli olaraq).

Nəşr prosesi

Tərtibatçı tətbiqi DevEco Studio-da (.hap formatı — HarmonyOS Ability Package) qurur. AppGallery Connect vasitəsilə nəşr: HAP faylını yükləmə, təsviri doldurma (ad, ikon, ekran görüntüləri), qiymət modelini konfiqurasiya etmə. Orta moderasiya müddəti 1-3 iş günüdür. Huawei təhlükəsizliyi (statik analiz), API uyğunluğunu və siyasətə uyğunluğu yoxlayır.

Monetizasiya

AppGallery dəstəkləyir: ödənişli tətbiqlər (Huawei komissiyası 15-30%), abunəliklər (15% komissiya), Huawei Ads Kit vasitəsilə reklam və IAP Kit vasitəsilə tətbiqdaxili alışlar. Huawei Pay Alipay və WeChat Pay-i dəstəkləyən Çin bazarı üçün ödəniş şlüzüdür. Beynəlxalq tərtibatçılar PayPal və ya bank köçürməsi vasitəsilə ödəniş alırlar.

TələbTəsvir
FormatHAP (HarmonyOS Ability Package) və ya App Pack (çoxsaylı HAP)
İmzaDevEco Studio vasitəsilə rəqəmsal imza (Huawei Sertifikatı)
Hədəf APIHarmonyOS 3.x üçün API 9+, HarmonyOS NEXT üçün API 11+
ÖlçüApp Pack üçün 4 GB-a qədər, əsas HAP üçün 200 MB-a qədər
DillərÇin üçün sadələşdirilmiş Çin dilinin məcburi dəstəyi
SiyasətHuawei Tərtibatçı Qaydalarına və Aİ üçün GDPR-ə uyğunluq

Huawei Mobile Services (HMS)

HMS Core Google olmayan Huawei cihazlarında Google Play Services-i əvəz edən xidmətlər toplusudur. Daxildir: Push Kit (push bildirişləri), Map Kit (naviqasiya ilə xəritələr), Location Kit (geolokasiya), Ads Kit (reklam), Analytics Kit (analitika), Account Kit (Huawei ID vasitəsilə səlahiyyət). HMS Core HarmonyOS cihazlarında və Huawei Android cihazlarında (AppGallery vasitəsilə) mövcuddur.

Tez-tez verilən suallar

HarmonyOS inkişafı üçün hansı dillər istifadə olunur?

Əsas dil ArkTS-dir, ArkUI inteqrasiyası ilə TypeScript uzantısıdır. Performans kritik modullar üçün Native API (NAPI) vasitəsilə C++ istifadə olunur. Java HarmonyOS 3-4-də köhnə tətbiqlər üçün dəstəklənir. Huawei HarmonyOS NEXT-dən başlayaraq bütün yeni layihələr üçün ArkTS və C++ tövsiyə edir.

HarmonyOS Android-dən nə ilə fərqlənir?

HarmonyOS öz mikronüvəsini (Linux deyil), paylanmış cihazlararası arxitekturanı, vahid DFS fayl sistemini və reaktiv DDM sinxronizasiyasını istifadə edir. HarmonyOS NEXT AOSP uyğunluğunu tamamilə tərk etdi və APK tətbiqlərini dəstəkləmir. Bütün tətbiqlər ArkTS və ya C++ dilində yazılır.

ArkUI nədir?

ArkUI ArkTS və C++ dilində HarmonyOS üçün bəyannaməli UI çərçivəsidir. İnterfeys @Component vasitəsilə build() metodu və reaktiv dəyişənlərlə (@State) təsvir olunur. ArkUI Qırılma Nöqtələri (xs-xl), GridRow/GridCol və GPU hesablamaları üçün fərdi Canvas renderinqi vasitəsilə adaptiv layoutu dəstəkləyir.

HarmonyOS tətbiqləri necə paylanır?

Rəsmi mağaza Huawei AppGallery-dir. Tərtibatçı qeydiyyatı pulsuzdur. Tətbiq HAP (HarmonyOS Ability Package) və ya App Pack formatında paylanır. Moderasiya 1-3 gün çəkir. Mağaza komissiyası monetizasiya modelindən asılı olaraq 15-30% təşkil edir. Çin üçün sadələşdirilmiş Çin dili dəstəyi məcburidir.

DevEco Studio nədir?

DevEco Studio IntelliJ IDEA əsasında HarmonyOS üçün rəsmi IDE-dir. ArkTS/C++ redaktoru, vizual ArkUI redaktoru, QEMU əsaslı emulyator, ani UI baxışı üçün Preview, CPU/yaddaş üçün Profiler və CI/CD üçün AppGallery Connect inteqrasiyası daxildir. Windows, macOS və Linux-u dəstəkləyir.

Xülasə

  • HarmonyOS — mikronüvəli Huawei paylanmış OS, NEXT-də AOSP tərk etmə və cihazlararası dəstək
  • ArkTS — @Component, @State, @Prop dekoratorları ilə TypeScript əsaslı əsas inkişaf dili
  • ArkUI — Qırılma Nöqtələri və GridRow/GridCol ilə adaptiv layoutlu bəyannaməli çərçivə
  • DevEco Studio — Emulyator, Preview və AppGallery Connect inteqrasiyası ilə IntelliJ-də IDE
  • Paylanmış arxitektura DFS, DDM, Ability Distribute və 7 cihaza qədər Super Device daxildir
  • AppGallery — pulsuz qeydiyyat, HAP formatı və 15-30% komissiya ilə rəsmi mağaza
  • HMS Core Push Kit, Map Kit, Location Kit, Ads Kit, Analytics Kit və Account Kit təqdim edir

Açar təslim mobil tətbiq hazırlayacağıq

IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.

Layihəni müzakirə et

Həm də oxuyun