Mobil inkişafda qurma və nəşr: bu nədir, hansı formatlar və necə işləyir

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

Mobil tətbiqin qurulması və nəşri — mənbə kodun quraşdırıla bilən fayla (APK, AAB, IPA) çevrilməsi və tətbiq mağazalarına yüklənməsi prosesidir. Google Play Console (2025)-ə görə, Android App Bundle (AAB) 2021-ci ilin avqustundan Google Play-də nəşr üçün məcburi formatdır. Bu məqalədə qurma formatlarını, kompilyasiyanı, kod imzalamanı, nəşr prosesini və beta testini nəzərdən keçirəcəyik.

Əsas məqamlar

  • APK — klassik Android quraşdırma faylı; AAB — dinamik APK generasiyası ilə Google Play üçün müasir format.
  • IPA — iOS quraşdırma faylı, Apple sertifikatı ilə imzalanmış. Yalnız macOS-da qurulur.
  • Kompilyasiya: JIT (Android 6.0-dək), AOT (Android 7+ ART), Bitcode (iOS, isteğe bağlı).
  • Code Signing — tərtibatçını müəyyən etmək üçün rəqəmsal sertifikatla tətbiqin məcburi imzalanması.
  • TestFlight (iOS) və Internal Testing (Android) — nəşrdən əvvəl beta testi alətləri.

Qurma formatları: APK, AAB, IPA

APK vs AAB

APK (Android Package Kit) — Android-də mobil tətbiqlərin qurulması və nəşri üçün ənənəvi format. APK tətbiqin bütün kodunu, resurslarını və manifestini ehtiva edir. AAB (Android App Bundle) — Google tərəfindən 2018-ci ildə təqdim edilmiş və 2021-ci ilin avqustundan yeni tətbiqlər üçün məcburi olan format. AAB birbaşa quraşdırılmır — Google Play hər cihaz üçün AAB-dan optimallaşdırılmış APK-nı dinamik olaraq yaradır.

AAB-ın üstünlükləri: yükləmə ölçüsü orta hesabla 15% daha kiçikdir (yalnız lazımi resursları çatdırmaqla: düzgün ekran sıxlığı, dillər, CPU arxitekturaları). AAB həmçinin modul çatdırılmanı dəstəkləyir — modulları tələb üzrə (Play Feature Delivery) və ya gecikməli (Play On-Demand) yükləyə bilərsiniz. Tərtibatçılar üçün AAB məcburidir; Google Play xaricində yayılma (sideloading, bazar yerləri) üçün — yalnız APK.

IPA

IPA (iOS App Store Package) — iOS quraşdırma faylı, imzalanmış tətbiqi olan ZIP arxividir. IPA-da Payload/ qovluğunda .app paketi, Provisioning Profile və imza olur. IPA yalnız macOS-da Xcode vasitəsilə qurulur, arxiv (.xcarchive) yaradır və IPA-nı ixrac edir. App Store vasitəsilə yayılma üçün IPA Apple Distribution Certificate ilə imzalanır; Ad Hoc və ya Enterprise üçün — müvafiq sertifikatlarla.

iOS və Android qurma formatlarının müqayisəsi
Parametr APK AAB IPA
PlatformaAndroidAndroid (Google Play)iOS
FormatZIP arxiviZIP arxiviZIP arxivi
Birbaşa quraşdırmaBəliXeyr (Google Play ilə)App Store / MDM ilə
İmzaKeystore (JKS)Keystore (JKS/PEPK)Apple Certificate
App ThinningXeyrBəli (avtomatik)Bəli (Slicing, Bitcode)

Kompilyasiya və optimallaşdırma: JIT, AOT, ART, Bitcode

JIT vs AOT

JIT (Just-In-Time) — tətbiqin icrası zamanı kodun kompilyasiyası, qurma və nəşr sürətinə təsir edir. Android 5.0 (Lollipop) versiyasına qədər JIT kompilyasiyası ilə Dalvik VM istifadə olunurdu. Hər tətbiq işə salındıqda DEX bayt kodu «ani olaraq» maşın koduna çevrilirdi. Çatışmazlıq: ilk işə salınmada yavaşlama və əlavə enerji sərfiyyatı. AOT (Ahead-Of-Time) — tətbiq işə salınmazdan əvvəl, quraşdırma zamanı kodun kompilyasiyası. Android 7.0 (Nougat)-dan etibarən ART (Android Runtime) tətbiqi quraşdırma zamanı tamamilə kompilyasiya edir.

ART (Android Runtime) — Android 5.0-da Dalvik-i əvəz edən işləmə mühiti. ART hibrid yanaşmadan istifadə edir: quraşdırma zamanı AOT kompilyasiyası + tez-tez icra olunan metodlar üçün JIT. Bu, AOT sürətini (sürətli başlanğıc) JIT çevikliyi ilə (adaptiv optimallaşdırma) birləşdirir. Nəticə: Dalvik ilə müqayisədə Android tətbiqlərinin performansı 20-30% artdı. Tərtibatçılar üçün ART-yə keçid şəffafdır — kod dəyişiklik tələb etmir.

Bitcode və App Thinning

Bitcode — Apple-ın müxtəlif prosessor arxitekturaları üçün IPA-nı yenidən kompilyasiya etmək üçün istifadə etdiyi aralıq kod təsviri (IR). Bitcode isteğe bağlıdır: iOS tətbiqləri üçün standart olaraq aktivdir, watchOS və tvOS üçün məcburidir. Apple yeni prosessorlar çıxdıqda tərtibatçının iştirakı olmadan Bitcode-u yenidən kompilyasiya edə bilər. App Thinning — Apple-ın Slicing (cihaz üçün yalnız lazımi resursları çatdırma) və On-Demand Resources (tələb üzrə resurs yükləmə) daxil olan texnologiyası. App Thinning App Store-dan yükləmə ölçüsünü 30-50% azaldır.

DEX — Android üçün bayt kodu formatı, ART/Dalvik tərəfindən icra olunur. Kotlin/Java mənbə kodu class fayllarına kompilyasiya olunur, sonra dx və ya d8 (müasir və daha sürətli alət) vasitəsilə DEX-ə çevrilir. Multidex — tək DEX faylında 65,536 metod limitini aşan tətbiqlər üçün mexanizm. Müasir layihələrdə targetSdkVersion >= 21 olduqda multidex avtomatik aktivləşir.

Kod imzalama: Code Signing, Keystore, Provisioning Profile

Android: Keystore

Keystore — qurma zamanı Android tətbiqini imzalamaq üçün şəxsi açar və sertifikatı ehtiva edən fayl. Keystore keytool (-genkey əmri) və ya Android Studio vasitəsilə yaradılır. Vacib: Keystore itirilə bilməz — onsuz Google Play-də tətbiqi yeniləyə bilməzsiniz. İmza parametrləri: keyAlias, keyPassword, storePassword və storeFile. Format: JKS (Java KeyStore) və ya AAB üçün PEPK (Play Encrypted Private Key).

App Bundle ID (Android) — paket notasiyasında (com.example.app) tətbiqin unikal identifikatoru. Version Code — daxili versiya nömrələməsi üçün tam ədəd (hər yeni qurma onu artırır). Version Name — istifadəçiyə göstərilən sətir (1.2.3). Bu parametrlər build.gradle-da tətbiq səviyyəsində təyin edilir.

iOS: Apple Certificate və Provisioning Profile

Apple Certificate — tərtibatçının şəxsiyyətini təsdiq edən rəqəmsal sertifikat. Növləri: Development (debug üçün), Distribution (App Store üçün), Ad Hoc (məhdud yayılma üçün). Sertifikatlar Apple Developer Account-da yaradılır və Keychain-ə yüklənir. Provisioning Profile — sertifikatı, App ID-ni (Bundle Identifier) və icazə verilən cihazların siyahısını birləşdirən fayl. Provisioning Profile olmadan tətbiq cihazda işləməyəcək.

Bundle ID (iOS) — tətbiqin unikal identifikatoru (com.example.app). Build Number — hər qurmada artan qurma nömrəsi. Marketing Version — istifadəçiyə göstərilən versiya. Versiya idarəetməsi: iOS üçün parametrlər Info.plist və Project Settings-də təyin edilir; Android üçün — build.gradle-da. IT Sectr-də, versiya yeniləmələrini Fastlane vasitəsilə avtomatlaşdırırıq — bu, buraxılış zamanı insan səhvlərini aradan qaldırır.

Mağazalarda nəşr prosesi

Google Play Console

Google Play Console — Android tətbiqlərini nəşr etmək üçün alət. Proses: tərtibatçı hesabı qeydiyyatı ($25 birdəfəlik), tətbiq yaratma, metadata doldurma (ad, təsvir, ekran görüntüləri, kateqoriya), AAB yükləmə, qiymət və yayılma konfiqurasiyası, baxış. Google tətbiqi avtomatik (viruslar, siyasətə uyğunluq) və bəzi kateqoriyalar üçün əl ilə yoxlayır. Baxış bir neçə saatdan 2-3 günə qədər çəkir.

App Store Connect

App Store Connect — iOS tətbiqlərini nəşr etmək üçün Apple platforması. Proses: Apple tərtibatçı hesabı ($99/il), App Store Connect-də tətbiq yaratma, Xcode-da IPA hazırlama (Archive → Distribute App → App Store Connect), Transporter və ya Xcode vasitəsilə yükləmə, metadata doldurma, baxışa göndərmə. App Review — Apple-ın əl ilə baxışı 24 saatdan 7 günə qədər çəkə bilər. İmtinanın tipik səbəbləri: işləməyən düymələr, natamam məzmun, izahatsız icazə sorğusu.

Beta testi: TestFlight, Closed/Open Beta

TestFlight (iOS)

TestFlight — iOS tətbiqlərinin beta testi üçün Apple-ın rəsmi aləti. TestFlight Internal Testing (e-poçtla 100 testçiyə qədər, baxış olmadan) və External Testing (10,000 testçiyə qədər, Apple baxışı ilə) dəstəkləyir. Qurmalar 90 gün ərzində mövcuddur, bundan sonra yeni qurma yüklənməlidir. TestFlight yeni qurma yükləndikdə testçilərin tətbiqini avtomatik yeniləyir.

Internal / Closed / Open Beta (Android)

Internal Testing (Android) — 100 testçiyə qədər, Google baxışı olmadan, qurma dərhal mövcuddur. Closed Beta — e-poçt və ya Google Groups ilə 1000 testçiyə qədər, baxış olmadan. Open Beta — açıq link vasitəsilə limitsiz testçi, Google baxışı ilə. Staged Rollout — yeniləməni alan istifadəçilərin faizinin tədricən artırılması (5% → 20% → 50% → 100%). Bu, ən təhlükəsiz buraxılış üsuludur.

App Thinning (iOS) — yüklənən IPA ölçüsünün avtomatik azaldılması: Slicing (cihaz üçün yalnız lazımi resurslar), Bitcode (prosessor optimallaşdırması), On-Demand Resources (tələb üzrə yükləmə). IT Sectr-də, iOS beta testi üçün TestFlight, Android üçün Internal Testing istifadə edirik — bu, kütləvi buraxılışdan əvvəl problemləri aşkarlamağa imkan verir.

Tez-tez verilən suallar

APK və AAB arasındakı fərq nədir?

APK — universal quraşdırma faylı, istənilən cihazda işləyir. AAB — hər cihaz üçün optimal APK yaradan Google Play formatı. AAB ilə yükləmə ölçüsü 15% daha kiçikdir. Google Play üçün AAB məcburidir, sideloading üçün — APK.

Keystore itirilsə nə olar?

Google Play-də tətbiqi yeniləyə bilməyəcəksiniz — yeni package name ilə yeni tətbiq yaratmalı olacaqsınız. Keystore-u təhlükəsiz yerdə saxlayın (parol meneceri, şifrələnmiş Git). Google Play App Signing (Google açarlarından istifadə) bu riski azaldır.

Mağazalarda nəşr etmək nə qədər başa gəlir?

Google Play — tərtibatçı hesabı üçün $25 birdəfəlik. App Store — $99/il. Hər iki məbləğ limitsiz tətbiqləri əhatə edir. iOS üçün həmçinin Mac (bundan $999) və ya bulud Mac icarəsi lazımdır.

Staged Rollout nədir?

Staged Rollout — tədricən yeniləmə yayımı: əvvəlcə 5% istifadəçi, sonra 20%, 50% və 100%. Hər hansı mərhələdə çökmələr aşkar olunarsa — yayım dayandırılır. Google Play Console-da mövcuddur.

Test üçün tərtibatçı hesabı üçün ödəməliyəmmi?

Android üçün — xeyr, hesab olmadan USB və ya emulyator vasitəsilə cihaza APK quraşdıra bilərsiniz. iOS üçün — bəli, $99/il hesab olmadan tətbiq yalnız simulyatorda işləyəcək, real cihazda yox.

Xülasə

  • AAB — Google Play üçün müasir format (2021-dən məcburi). APK — mağaza xaricində yayılma üçün.
  • IPA — iOS quraşdırma faylı, yalnız Mac-da qurulur, Apple Sertifikatı ilə imzalanır.
  • ART (Android Runtime) hibrid AOT + JIT yanaşması istifadə edir; Bitcode — iOS üçün isteğe bağlı aralıq təsvir.
  • Keystore (Android) və Apple Certificate + Provisioning Profile (iOS) — kod imzalamanın məcburi komponentləri.
  • Google Play Console — $25 birdəfəlik; App Store Connect — $99/il. Baxış saatlardan bir həftəyə qədər çəkir.
  • TestFlight — iOS beta testi; Internal / Closed / Open Beta — Android üçün.
  • Fastlane vasitəsilə kod imzalama və qurmanı avtomatlaşdırın — bu, səhvləri aradan qaldırır və buraxılışları sürətləndirir.

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