# App Store Submission — To'liq Darslik

## Mundarija
1. [Apple Developer Account (Individual vs Org)](#developer-account)
2. [Sertifikatlar va Provisioning Profiles](#certificates)
3. [App Store Connect (Ilova yaratish)](#app-store-connect)
4. [Screenshots va Metadata tayyorlash](#screenshots-metadata)
5. [Archive va Xcode orqali yuklash](#archive-upload)
6. [App Store Review Guidelines (Rad etilish sabablari)](#review-guidelines)
7. [In-App Purchase va StoreKit 2](#iap)
8. [TestFlight (Beta testing)](#testflight)
9. [App Privacy (Privacy Labels)](#privacy)
10. [Versioning va Build raqamlari](#versioning)
11. [Xulosa](#xulosa)

---

## 1. Apple Developer Account {#developer-account}

Ilovani App Store'ga chiqarish uchun sizga Apple Developer Account kerak:
- **Individual:** Faqat sizning ismingiz chiqadi. Yillik $99.
- **Organization:** Kompaniya nomi chiqadi. DUNS raqami kerak bo'ladi. Yillik $99.
- **Enterprise:** Ichki ilovalar uchun (App Store'ga chiqmaydi). Yillik $299.

---

## 2. Sertifikatlar va Provisioning Profiles {#certificates}

Bu — Apple'ning "Xavfsizlik pasporti".
- **Development Certificate:** Ilovani o'z qurilmangizda test qilish uchun.
- **Distribution Certificate:** App Store'ga yuklash uchun.
- **App ID:** Ilovangizning unikal Bundle ID'si (masalan, `com.company.app`).
- **Provisioning Profile:** Sertifikat va App ID ni birlashtiruvchi ruxsatnoma.

---

## 3. App Store Connect {#app-store-connect}

Bu — veb-portal ([appstoreconnect.apple.com](https://appstoreconnect.apple.com)).
- **My Apps:** Yangi ilova nomi, tili va Bundle ID sini kiritasiz.
- **Pricing and Availability:** Narxi (bepul yoki pullik) va qaysi davlatlarda chiqishini belgilaysiz.

---

## 4. Screenshots va Metadata tayyorlash {#screenshots-metadata}

- **Screenshots:** iPhone (6.5", 5.5") va iPad (12.9") ekran o’lchamlari majburiy.
- **Description:** Ilova nima qilishi haqida matn.
- **Keywords:** Qidiruvda chiqish uchun kalit so'zlar.
- **Support URL:** Sayt yoki bog'lanish uchun sahifa.

---

## 5. Archive va Xcode orqali yuklash {#archive-upload}

1. Simulyatorni emas, **"Any iOS Device"** ni tanlang.
2. `Product` → `Archive` bosing.
3. `Distribute App` tugmasini bosib, App Store Connect'ga yuklang.

---

## 6. App Store Review Guidelines {#review-guidelines}

Apple xodimlari ilovangizni tekshiradi. Eng ko'p rad etilish (rejection) sabablari:
- **Crashlar:** Ilova ochilishi bilan crash bo'lsa.
- **Plagiat:** Boshqa ilovaning nusxasi bo'lsa.
- **Metadata:** Screenshotlar haqiqiy ilova bilan mos kelmasa.
- **Privacy:** Foydalanuvchi ma'lumotlarini so'rab, nega kerakligini tushuntirmasa.

---

## 7. In-App Purchase va StoreKit 2 {#iap}

Ilova ichida rasm sotish yoki obuna bo'lish uchun Apple tizimidan foydalanish shart. Apple **15% dan 30% gacha komissiya** oladi.

---

## 8. TestFlight {#testflight}

Ilovani App Store'ga chiqarishdan oldin beta-testerlarga yuborish:
- **Internal Testing:** Hamkasblar uchun (darhol yuklanadi).
- **External Testing:** Tashqi foydalanuvchilar uchun (Apple review'dan o’tishi kerak).

---

## 9. App Privacy (Privacy Labels) {#privacy}

Foydalanuvchining qaysi ma'lumotlarini (location, contact, ID) yig'ayotganingizni o'zingiz tanlashingiz kerak. Bu App Store'da ilova sahifasida ko'rinadi.

---

## 10. Versioning va Build raqamlari {#versioning}

- **Version (1.0.0):** Foydalanuvchiga ko'rinadi. Yangi funksiya qo'shilganda o'zgartiriladi.
- **Build (42):** Ichki ishlar uchun. Har safar yuklaganda oshirilishi kerak.

---

## 11. Xulosa {#xulosa}

App Store'ga chiqish — bu mas'uliyatli jarayon.
- Guideline larni yaxshilab o'qing.
- TestFlight'da kamida 5-10 kishida test qilib ko'ring.
- Screenshotlarga alohida e'tibor bering, ular — ilovaning yuzi.

**Vazifa:** App Store Connect veb-portaliga kiring va birinchi "Draft" ilovangizni yaratib ko'ring! 🚀
