Marketing Version: bu nima, Build Number dan farqi va o'rnatish

Muallif: IT Sectr Nashr etilgan: 2026-04-18 O'qish vaqti: 8 daq

Marketing Version — bu foydalanuvchi tomonidan ko'rinadigan, ilovalar do'konlarida va qurilmada aks ettiriladigan ilova versiyasidir. Build Number-dan farqli o'laroq, ushbu parametr foydalanuvchi idrokiga yo'naltirilgan va semantik ma'noga ega. Apple Developer, 2025 ma'lumotlariga ko'ra, Marketing Version-dan to'g'ri foydalanish foydalanuvchilarning yangilanishlarga bo'lgan ishonchini oshiradi.

Asosiy ma'lumotlar

  • Marketing Version — foydalanuvchi App Store, Google Play va qurilmada ko'radigan ilova versiyasi satridir.
  • iOS da CFBundleShortVersionString, Android da build.gradle faylidagi versionName sifatida o'rnatiladi.
  • Build Number-dan farqli o'laroq, Marketing Version majburiy emas noyob bo'lishi va bir nechta yig'ishlar uchun takrorlanishi mumkin.
  • Semantik format Major.Minor.Patch — foydalanuvchilar uchun eng keng tarqalgan va tushunarli sxema.
  • Marketing Version sinxronlashtiriladi App Store Connect va Google Play Console dagi reliz raqami bilan bir xillik uchun.

Marketing Version nima

Marketing Version — bu yakuniy foydalanuvchi uchun ilova versiyasini ifodalovchi semantik satrdir. iOS da CFBundleShortVersionString kaliti bilan, Android da versionName parametri bilan o'rnatiladi.

„Marketing Version" atamasi Xcode da rasmiy ravishda ishlatiladi: target sozlamalari interfeysidagi maydon „Marketing Version" deb ataladi va Info.plist da CFBundleShortVersionString ga mos keladi. Android da uning o'xshashi versionName dir, garchi bu atama kamroq ishlatilsa ham.

Apple Developer Documentation (2025) ga ko'ra, Marketing Version eng ko'pi bilan uchta nuqta bilan ajratilgan raqamdan iborat bo'lishi kerak, bo'shliqlar va maxsus belgilarsiz. Har bir raqam 255 dan oshmasligi kerak.

Marketing Version-ni o'zgarishlarning ahamiyatini aks ettiradigan qilib tanlang: tub o'zgarishlar uchun major yangilanishlar, yangi funksionallik uchun minor yangilanishlar.

Ichki Build Number-dan farqi

Marketing Version Build Number-dan maqsadi jihatidan tubdan farq qiladi: birinchisi foydalanuvchini xabardor qiladi, ikkinchisi — do'kon uchun yig'ishni identifikatsiya qiladi. Build Number Marketing Version o'zgarmasdan o'sishi mumkin.

Misol uchun, chiqarilgan versiyadagi muhim xatoni tuzatishda jamoa ilovani bir xil Marketing Version (1.2.0) bilan qayta yig'ishi mumkin, lekin oshirilgan Build Number (15 dan 16 ga) bilan. Foydalanuvchi bir xil versiyani ko'radi, ammo do'kon yig'ish yangiroq ekanligini tushunadi.

Bunday moslashuvchanlik dasturchilarga versiya o'zgarishi haqida foydalanuvchilarni xabardor qilmasdan tuzatishlarni chiqarishga imkon beradi.

Marketing Version qayerda ko'rsatiladi

Marketing Version foydalanuvchining ilova bilan o'zaro aloqasining bir nechta asosiy nuqtalarida ko'rsatiladi. Ilovalar do'konida u ilova kartasida, yangilanish tavsifida va versiyalar tarixida ko'rinadi.

Qurilmada Marketing Version tizim sozlamalarida („Ilova haqida" yoki „Ilovalar" bo'limi), App Store yoki Google Play orqali yangilanish muloqot oynalarida, shuningdek ilova ichidagi „Dastur haqida" ekranida ko'rsatiladi.

Tushunarli Marketing Version foydalanuvchiga o'rnatilgan versiyaning dolzarbligini baholashga va yangilanish to'g'risida qaror qabul qilishga yordam beradi.

iOS da Marketing Version

iOS da Marketing Version Xcode da target sozlamalarining General yorlig'idagi „Marketing Version" maydoni orqali o'rnatiladi. Qiymat Info.plist da CFBundleShortVersionString sifatida saqlanadi.

Versiya formati Apple tomonidan qat'iy tartibga solinadi: satr nuqta bilan ajratilgan birdan uchgacha raqamdan iborat bo'lishi kerak (masalan, 1, 1.2 yoki 1.2.3). Maksimal uzunlik — 18 belgi. Har bir raqam 255 dan oshmaydi.

Apple App Store Review Guidelines (2025) ga ko'ra, App Store Connect Marketing Version avvalgi nashr etilgan versiyadan bir major yoki minor qiymatdan ko'proq farq qilsa, bildni yuklashga ruxsat bermaydi — bu foydalanuvchilarni o'tkazib yuborilgan yangilanishlardan himoya qiladi.

Marketing Version-ni boshqarish uchun agvtool dan foydalaning — bu CI/CD tizimlari bilan integratsiyani soddalashtiradi va Build Number bilan sinxronlashni kafolatlaydi.

Android da Marketing Version

Android da Marketing Version build.gradle faylidagi versionName parametri bilan o'rnatiladi. iOS dan farqli o'laroq, Android versiya satri formatiga qat'iy cheklovlar qo'ymaydi.

versionName har qanday belgilarni o'z ichiga olishi mumkin: harflar, raqamlar, defislar va nuqtalar. Google Play bu satrni ilova kartasida va yangilanishlar ro'yxatida ko'rsatadi, lekin uni hech qanday andozaga muvofiqligini tekshirmaydi.

Biroq Google Play bir xillik uchun semantik format Major.Minor.Patch ga rioya qilishni tavsiya qiladi. Bu foydalanuvchilar tomonidan versiyani idrok etishni osonlashtiradi va yangilanishlarni tahlil qilishni avtomatlashtirishga imkon beradi.

Reliz turini — major yangilanish, minor yoki patch — aniq aks ettiradigan versionName ni belgilang. Bu foydalanuvchilarga o'zgarishlarning ahamiyatini tez baholashga yordam beradi.

versionName ni dinamik yaratish

versionName Android da Git teglari yoki CI/CD o'zgaruvchilari asosida dinamik ravishda yaratilishi mumkin. Bu versiyalash jarayonini soddalashtiradi va ombor bilan yig'ish o'rtasidagi nomuvofiqliklarni bartaraf qiladi.

Oddiy yondashuv — Git tegini o'qish (masalan, v2.1.0) va uning qiymatini versionName sifatida ishlatish. Agar teg bo'lmasa, versiya sana va commit raqami asosida yaratilishi mumkin.

Bunday yondashuv versionName har doim manba kodining holatiga mos kelishini kafolatlaydi va qo'lda yangilashni talab qilmaydi.

Marketing Version va Build Number o'rtasidagi farq

Marketing Version va Build Number — bu turli vazifalarni hal qiladigan ikkita mustaqil parametrdir. Marketing Version foydalanuvchini xabardor qiladi, Build Number esa texnik jihatdan yig'ishni identifikatsiya qiladi.

Asosiy farq — noyoblik. Build Number har bir yig'ish uchun noyob bo'lishi kerak. Marketing Version takrorlanishi mumkin: bir versiyaning bir nechta bildlari bir xil Marketing Version ga, ammo turli Build Number ga ega.

Google Play Policy (2025) ga ko'ra, bir xil Marketing Version lekin turli Build Number bilan ikkita APK yuklansa, Google Play ikkalasini bir versiyaning turli bildlari sifatida qabul qiladi. App Store uchun ham shunga o'xshash qoida amal qiladi.

Esingizda bo'lsin: Build Number — mashinalar uchun, Marketing Version — insonlar uchun. Birinchisini avtomatlashtiring, ikkinchisini diqqat bilan rejalashtiring.

Versiyalash strategiyalari

Strategiyani tanlash ilova turiga, auditoriyaga va reliz jarayoniga bog'liq. Uchta asosiy sxema — semantik, kalendar va gibrid — ko'pchilik stsenariylarni qamrab oladi.

Semantik versiya (SemVer) Major.Minor.Patch formatidan foydalanadi va qaysi komponentni qachon oshirishni qat'iy belgilaydi. Ommaviy API va murakkab integratsiyaga ega ilovalar uchun idealdir.

semver.org (2023) ma'lumotlariga ko'ra, SemVer spetsifikatsiyasining 2.0.0 versiyasi 89% ochiq manbali mobil loyihalarda ishlatiladi va barcha paket menejerlari tomonidan qo'llab-quvvatlanadi.

Kalendar versiyalash

Kalendar versiyalash (CalVer) versiya sifatida reliz sanasidan foydalanadi — masalan, 2025 yil iyuni uchun 25.06. Bu yondashuv tez-tez yangilanadigan ilovalarda mashhur.

CalVer o'zgarishlarning ahamiyati haqida ma'lumot bermaydi, lekin versiyaning yangiligini mukammal ko'rsatadi. Foydalanuvchi darhol 25.06 versiyasi 25.03 dan yangiroq ekanligini tushunadi.

Ilovangiz tez-tez yangilanadigan bo'lsa va foydalanuvchilar uchun ma'lumotlarning yangiligi o'zgarishlar hajmidan muhimroq bo'lsa, kalendar versiyalashni tanlang.

Tanlash bo'yicha tavsiyalar

MVP va startaplar uchun patchesiz oddiy semantik versiya (Major.Minor) mos keladi. Uzoq muddatli qo'llab-quvvatlashga ega yetuk mahsulotlar uchun — to'liq SemVer. Uzluksiz relizli ilovalar uchun — CalVer.

Hech qachon sanani Build Number sifatida ishlatmang — bu kuniga bir nechta yig'ish bo'lganda ziddiyatlarga olib kelishi mumkin. Build Number ketma-ket yoki murakkab bo'lishi kerak, lekin har doim monoton o'suvchi bo'lishi kerak.

Marketing Version tanlashdagi xatolar

Oddiy xato — yangi major chizig'iga o'tishda versiya komponentini o'tkazib yuborish. Masalan, 1.9.9 versiyasidan keyin keyingisi 2.0.0 bo'lishi kerak, 1.10.0 emas. Bu semantikani buzadi va foydalanuvchilarni chalg'itadi.

Yana bir tez-tez uchraydigan muammo — kod va ilovalar do'konidagi Marketing Version o'rtasidagi nomuvofiqlik. Bildni ko'rib chiqishga yuborishdan oldin har doim build.gradle dagi versionName Google Play Console yoki App Store Connect da ko'rsatilgan versiyaga mos kelishini tekshiring.

Marketing Version sozlash misollari

Kod misollari ikkala platformada Marketing Version ni qanday o'rnatish va uning yangilanishini avtomatlashtirishni ko'rsatadi.

Android Gradle da versionName sozlash

Android da versionName build.gradle da o'rnatiladi. Qiymat statik yoki muhit o'zgaruvchisidan o'qilishi mumkin.

groovy
android {
    defaultConfig {
        versionCode 15
        versionName "2.1.0"
    }
}

// Git tegidan versiyani o'qish
def getVersionNameFromGit = {
    def tag = "git describe --tags".execute().
        text.trim()
    return tag.startsWith("v") ? tag.substring(1) : tag
}

versionName Git tegidan olinadi, bu ombordagi versiya bilan yig'ilgan ilova o'rtasidagi muvofiqlikni kafolatlaydi.

Xcode da Marketing Version boshqaruvi

iOS da Marketing Version Xcode yoki agvtool orqali o'rnatiladi. Quyidagi buyruq yangi marketing versiyasini o'rnatadi.

bash
# Marketing Version ni o'rnatish
xcrun agvtool new-marketing-version 2.1.0

# Avtomatik oshirish
xcrun agvtool next-marketing-version

agvtool avtomatik ravishda Info.plist ni yangilaydi va versiyani Xcode loyihasining barcha targetlari o'rtasida sinxronlashtiradi.

Ikkala platforma uchun Fastlane

Fastlane ikkala platformada Marketing Version ni bitta skriptdan boshqarishga imkon beradi, bu esa o'zaro platforma loyihalarini qo'llab-quvvatlashni soddalashtiradi.

ruby
# Marketing versiyasini o'rnatish
increment_version_number(
    version_number: "2.1.0"
)

# Minor versiyani avtomatik oshirish
increment_version_number(
    bump_type: "minor"
)

Fastlane ikkala platformada ishlaydi va ko'pchilik CI/CD xizmatlari tomonidan qo'llab-quvvatlanadi.

Tez-tez beriladigan savollar

Marketing Version Build Number dan nima bilan farq qiladi?

Marketing Version — foydalanuvchi uchun versiya (do'konda ko'rsatiladi), Build Number — yig'ishning ichki identifikatori. Marketing Version takrorlanishi mumkin, Build Number har bir bild uchun noyob bo'lishi kerak.

Marketing Version ni qanchalik tez-tez o'zgartirish kerak?

Har bir yangi funksionallik relizida, API o'zgarishida yoki katta tuzatishda. Tuzatuvchi relizlar (hotfix) uchun Marketing Version o'zgartirilmasligi mumkin — Build Number ni oshirish kifoya.

Marketing Version da harflardan foydalanish mumkinmi?

Android da — ha, versionName har qanday belgilarni o'z ichiga olishi mumkin. iOS da — faqat raqamlar va nuqtalar. Apple App Store bilan moslik uchun raqamli formatga rioya qilishni tavsiya qiladi.

Marketing Version ni qanday qaytarish mumkin?

Tavsiya etilmaydi. Ilovalar do'konlari versiyani qaytarishni qo'llab-quvvatlamaydi. Buning o'rniga tuzatishlar bilan yangi versiyani chiqaring va patc komponentini oshiring. Foydalanuvchilar avtomatik ravishda yangi versiyaga o'tadilar.

Marketing Version ni iOS va Android o'rtasida qanday sinxronlashtirish mumkin?

Loyihaning ildizida umumiy konfiguratsiya faylidan foydalaning (masalan, version.properties). Ikkala platformadagi yig'ish skriptlari versiyani ushbu fayldan o'qiydi, qiymatlarning sinxronlashuvini kafolatlaydi.

Xulosa

  • Marketing Version — do'konlarda va qurilmada ko'rsatiladigan, inson idrokiga yo'naltirilgan foydalanuvchi ilova versiyasi.
  • iOS da Xcode dagi CFBundleShortVersionString orqali, Android da build.gradle dagi versionName orqali o'rnatiladi.
  • Marketing Version takrorlanishi mumkin bir nechta yig'ishlar uchun, noyob Build Number dan farqli o'laroq.
  • Semantik versiya Major.Minor.Patch — ommaviy API ga ega mobil ilovalar uchun standart.
  • Kalendar versiyalash tez-tez yangilanadigan, ma'lumotlarning yangiligi muhim bo'lgan ilovalar uchun mos keladi.
  • Avtomatlashtirish agvtool, Gradle yoki fastlane orqali ombor bilan yig'ish o'rtasidagi nomuvofiqliklarni bartaraf qiladi.
  • Build Number va Marketing Version — mustaqil parametrlar: har birini alohida boshqaring.

Biz kalit topshirig'i bilan mobil ilovani ishlab chiqamiz

IT Sectr 2017-yildan beri startaplar va korxonalar uchun iOS va Android ilovalarini yaratadi. Biz sizga maslahat beramiz va eng yaxshi yechimni taklif qilamiz.

Loyihani muhokama qilish

Shuningdek o'qing