Privacy Nutrition Label — App Store'da foydalanuvchiga ilova qanday ma'lumotlarni to'plashi va qanday maqsadlarda ishlatishini ko'rsatadigan maxfiylik yorliqlari. Apple har bir ilova nashr qilish yoki yangilashdan oldin to'ldirilgan yorliqqa ega bo'lishini talab qiladi. Apple App Privacy Details ma'lumotlariga ko'ra, maxfiylik yorliqlari 14 ma'lumot toifasi va analitikadan kontent shaxsiylashtirishgacha bo'lgan 5 yig'ish maqsadini qamrab oladi.
Asosiy nuqtalar
Privacy Nutrition Label — App Store'da ilova sahifasida ma'lumot yig'ish haqida xulosani ko'rsatadigan vizual blok. Apple bu yorliqlarni 2020-yil dekabrda mahsulotlardagi oziqaviy qiymat ga o'xshash sifatida taqdim etdi: kaloriya va yog'lar o'rniga foydalanuvchi ilova qanday ma'lumotlarni to'plashi va ulardan qanday foydalanishini ko'radi.
Yorliqlar ikki bo'limdan iborat: “Kuzatish uchun ishlatiladigan ma'lumotlar” va “Foydalanuvchi bilan bog'liq ma'lumotlar”. Birinchisida kuzatish uchun uchinchi tomonlarga uzatiladigan ma'lumotlar ko'rsatiladi. Ikkinchisida — ilova to'playdigan va foydalanuvchining hisobi yoki qurilmasi bilan bog'laydigan barcha ma'lumotlar.
Har bir ma'lumot elementi rang bilan belgilanadi: sariq (ma'lumot foydalanuvchi bilan bog'liq) yoki yashil (ma'lumot foydalanuvchi bilan bog'liq emas). Qancha ko'p sariq yorliq bo'lsa, foydalanuvchi qanday ma'lumotlar yig'ilayotganiga shuncha ko'p e'tibor beradi. Adjust (2024) ma'lumotlariga ko'ra, 8+ sariq yorliqli ilovalarning o'rnatish konversiyalari 22% kam.
Yorliqlarni to'ldirish App Store Connect'da veb interfeys orqali amalga oshiriladi. Dasturchi savollarga javob beradi: ilova ma'lum bir ma'lumot turini to'playdimi, u foydalanuvchi bilan bog'liqmi va qanday maqsadlarda foydalaniladi. Apple yorliqlarning haqiqiyligini dasturiy tekshirmaydi, lekin deklaratsiyaning haqiqiy xatti-harakatga mos kelmasligi rad etilishiga olib kelishi mumkin.
Apple yorliqlarni WWDC 2020 da iOS 14 bilan birga e'lon qildi. Dastlab ular ATT va Privacy Manife ni ham o'z ichiga olgan kengroq maxfiylik tashabbusining bir qismi edi. Yorliqlarni to'ldirish 2020-yil 8-dekabrdan barcha ilovalar va yangilanishlar uchun majburiy bo'ldi.
Yorliqlar Apple'ning tartibga soluvchilar va foydalanuvchilarning ma'lumot yig'ishga ortib borayotgan e'tiboriga javobi edi. GDPR va CCPA dan farqli o'laroq, rasmiy rozilik talab qiladigan, Apple shaffoflikka e'tibor qaratdi: foydalanuvchi ilovani o'rnatishdan oldin ham qanday ma'lumotlar yig'ilayotganini darhol ko'radi.
2022-yilda Apple yorliqlarga interaktivlik qo'shdi: foydalanuvchi har bir toifani bosib, ma'lumotlar qanday maqsadlarda ishlatilishini ko'rishi mumkin. 2024-yilda Apple yorliqlarning ikkilik fayl ichidagi Privacy Manife'da e'lon qilingan ma'lumotlarga mos kelishini talab qila boshladi.
Google 2022-yil aprelida Google Play'da o'xshash “Ma'lumot Xavfsizligi” (Data Safety) bo'limini taqdim etdi. Asosiy farq: Google yorliqlarni avtomatik kod skanerlash orqali tekshiradi va dasturchidan tasdiq so'rashi mumkin, Apple esa dasturchining deklaratsiyasiga tayanadi va ko'rib chiqish vaqtida tekshiradi.
Bundan tashqari, Google Play xavfsizlik choralarini ko'rsatishni talab qiladi (ma'lumotlarni saqlash va uzatish vaqtida shifrlash, xavfsizlik dasturlariga muvofiqlik). Apple bu ma'lumotni talab qilmaydi, lekin ATS (App Transport Security) kabi majburiy funksiyalar orqali talablarning bajarilishini tekshiradi.
Apple yorliqlarni to'ldirish uchun ilova kodini tahlil qilmaydi — dasturchi mustaqil ravishda yig'iladigan ma'lumotlarni deklaratsiya qiladi. Biroq 2024-yilda Apple yorliqlarni ikkilik fayl ichidagi Privacy Manife bilan solishtirishni boshladi, bu jarayoni rasmiylashtiradi.
Dasturchi App Store Connect'ga kiradi → ilovani tanlaydi → “Ilova maxfiyligi” bo'limi → “Maxfiylik yorliqlari”. 14 ma'lumot toifasining har biri bilan bog'liq savollari bo'lgan so'rovnoma ochiladi. Har bir toifa uchun ko'rsatish kerak: bu ma'lumot turini yig'asizmi, foydalanuvchi bilan bog'liqmi (linked) va qanday maqsadlarda.
Yig'ish maqsadlariga kiradi: uchinchi tomon reklamasi, dasturchi analitikasi, mahsulot rivojlantirish (Product Personalization), kontentni shaxsiylashtirish, ilova funksiyalarini bajarish (App Functionality). Bitta ma'lumot toifasi bir necha maqsadlar uchun ishlatilishi mumkin. Muhim: ma'lumotlar uchinchi tomonlarga uzatilsa, bu kuzatish sifatida belgilanishi kerak.
O'zgarishlarni saqlagandan so'ng, Apple 24 soat ichida App Store'da ko'rsatiladigan yorliqlarning yangi versiyasini yaratadi. Yangi qurilma yuborilganda, yorliqlar avtomatik tekshiriladi: agar ular to'ldirilmagan bo'lsa, yuborish tugmasi bloklanadi. Apple Developer (2024) ma'lumot yig'ish mantig'idagi har bir o'zgarishda yorliqlarni yangilashni tavsiya qiladi.
2024-yilgacha yorliqlar to'liq self-reported edi — Apple dasturchining javoblariga ishonardi. Privacy Manife paydo bo'lishi va yorliqlarning manifest bilan integratsiyasi bilan Apple avtomatik solishtirish ni boshladi. Masalan, manifest reklama uchun identifikatorlarni (IDFA) yig'ishni deklaratsiya qilsa, lekin yorliqlar bu toifani belgilamasa, App Store Connect ogohlantirish ko'rsatadi.
Biroq to'liq avtomatik tekshirish hali mavjud emas. Dasturchi ikkala ma'lumot manbasini (yorliqlar + manifest) dolzarb holatda saqlashi shart. Nomuvofiqlik ko'rib chiqish vaqtida qo'lda tekshirishda aniqlanishi mumkin, ayniqsa katta yangilanishlar yoki ko'p ma'lumotli ilovalar uchun.
| Tekshirish usuli | Apple | |
|---|---|---|
| Self-reporting | Ha, asos | Ha, asos |
| Avtomatik kod tekshirishi | Qisman (2024 dan, manifest orqali) | Ha |
| Ko'rib chiquvchi tomonidan qo'lda tekshirish | Shubha bo'lganda | Kamdan kam |
Apple ma'lumotlarni 3 bo'limda guruhlangan 14 toifaga ajratadi: kuzatish uchun ishlatiladigan ma'lumotlar; foydalanuvchi bilan bog'liq ma'lumotlar; foydalanuvchi bilan bog'liq bo'lmagan ma'lumotlar. Asosiy toifalarni ko'rib chiqamiz.
“Aloqa ma'lumotlari” toifasiga ism, email, telefon, jismoniy manzil kiradi. “Identifikatorlar” toifasi — IDFA, User ID, foydalanuvchi nomi. Ilova ijtimoiy tarmoqlar orqali kirishdan foydalansa va foydalanuvchining emailini olsa, bu toifani “Funksiyalarni bajarish” maqsadi bilan ko'rsatish kerak.
“To'lov ma'lumotlari” toifasi xaridlar haqidagi ma'lumotlarni o'z ichiga oladi: karta raqami (Apple Pay ishlatilmasa), xaridlar tarixi. Apple Pay bu toifani ko'rsatishni talab qilmaydi, chunki Apple to'lovlarni o'z tomonida qayta ishlaydi va ma'lumotlarni dasturchiga uzatmaydi.
“Foydalanish ma'lumotlari” toifasiga o'zaro ta'sir jurnallari, reklama kliklari, sahifa ko'rishlar, sessiya vaqti kiradi. Aksariyat ilovalar bu ma'lumotlarni analitika uchun to'playdi. Muhim: ma'lumotlar uchinchi tomonlarga (Google Analytics, Firebase) uzatilsa, “Analitika” maqsadini belgilash kerak.
“Diagnostika” toifasiga crash jurnallari, ishlash ko'rsatkichlari, ishga tushirish hisobotlari kiradi. Bu ma'lumotlar odatda foydalanuvchi bilan bog'liq emas (not linked) va umumlashtirilgan shaklda yig'iladi. Shunga qaramay, ilova Crashlytics yoki Sentry dan foydalansa, ular yorliqlarda aks etishi kerak.
“Foydalanuvchi kontenti” toifasiga fotosurat, video, audio, fayllar, foydalanuvchi tomonidan yaratilgan kontent (xabarlar, sharhlar) kiradi. Ilova fotosuratlar yoki fayllarga kirishni so'rasa, bu toifa majburiydir. Ilova faqat fotosuratlarni o'qisa ham, bu ma'lumot yig'ish hisoblanadi.
“Xaridlar tarixi” toifasi — ilova ichidagi xaridlar, obunalar, to'lovlar haqida umumlashtirilgan ma'lumotlar. “Moliyaviy ma'lumotlar” bilan aralashtirmang. Xaridlar tarixi tranzaksiyalarning metama'lumotlari, to'lov rekvizitlari emas.
Yangi yoki yangilanayotgan ilova uchun App Store Connect'da Privacy Nutrition Label'ni to'ldirish bo'yicha bosqichma-bosqich qo'llanma.
Yorliqlarni to'ldirishdan oldin ma'lumot yig'adigan barcha SDK va xizmatlarning to'liq ro'yxatini tuzing: Firebase, AppsFlyer, Google Ads, Facebook SDK, Sentry, Amplitude. Har bir SDK uchun u qanday ma'lumotlarni yig'ishini va ularni uchinchi tomonlarga uzatishini tekshiring. Adjust (2024) har bir SDK uchun ma'lumot turlari, maqsadlar va bog'lanish jadvalini yuritishni tavsiya qiladi.
To'g'ridan-to'g'ri kodingiz qanday ma'lumotlarni yig'ishini aniqlang. Masalan, ilova qidiruv tarixini saqlasa va uni foydalanuvchi hisobi bilan bog'lasa — bular “Mahsulot rivojlantirish” maqsadi uchun linked “Foydalanish ma'lumotlari”. Har doim ma'lumotlar uchinchi tomonlarga (reklama tarmoqlari, analitika) uzatilmasligini tekshiring.
App Store Connect'da ilovani tanlang → “Ilova maxfiyligi” bo'limi. “Boshlash” tugmasini bosing va ilovangiz kuzatish uchun ma'lumot yig'adimi yoki yo'qmi tanlang. Agar yo'q bo'lsa, so'rovnomaga o'ting. 14 ma'lumot toifasining barchasi uchun ketma-ket har bir savolga javob bering.
Misol: ilova Firebase Analytics dan foydalansa, “Foydalanish ma'lumotlari” toifasi uchun “Ha” deb javob bering, linked (Firebase ma'lumotlarni Instance ID bilan bog'laydi) va “Analitika” maqsadini ko'rsating. Shuningdek Firebase Crashlytics dan foydalansangiz, “Diagnostika” toifasini “Mahsulot rivojlantirish” maqsadi bilan qo'shing.
To'ldirgandan so'ng yorliqlarni saqlang. Bir nechta ilovalaringiz bo'lsa, yorliqlar har biri uchun noyobdir — nusxalash nazarda tutilmagan. Yorliqlarni ma'lumot yig'ish mantig'idagi har bir o'zgarishda yangilang, aks holda eski yorliqlar yangi funksionallikka mos kelmasligi mumkin.
// Misol: analitika uchun ma'lumot yuborishni tekshirish
import FirebaseAnalytics
final class AnalyticsService {
static func logEvent(_ name: String, params: [String: Any]) {
Analytics.logEvent(name, parameters: params)
}
static func logPurchase(amount: Double, currency: String) {
Analytics.logEvent(AnalyticsEventPurchase, parameters: [
AnalyticsParameterValue: amount,
AnalyticsParameterCurrency: currency
])
}
}
Nashr qilingan ilova uchun yorliqlarni yangilash uchun App Store Connect'da ilova versiyasini oching va “Ilova maxfiyligi” bo'limida o'zgartirishlar kiriting. O'zgartirishlar ko'rib chiqishdan o'tgandan so'ng kuchga kiradi. Yangi yorliqlar foydalanuvchilarga yangilanish nashr qilinganidan so'ng 24 soat ichida ko'rsatiladi.
Muhim: yorliqlardan ma'lumotlarni olib tashlash (masalan, ma'lumotlarni uchinchi tomonlarga uzatishni to'xtatdingiz) yangi qurilma talab qilmaydi — App Store Connect'da yorliqlarni o'zgartirish kifoya. Yangi ma'lumotlarni qo'shish ham yorliqlarni o'zgartirishni, ham kodda Privacy Manife'ni tegishli yangilashni talab qiladi.
Dasturchilar ko'pincha yorliqlarni to'ldirishda xatolarga yo'l qo'yadilar, bu yangilanishlarning rad etilishiga yoki foydalanuvchi shikoyatlariga olib keladi.
Eng keng tarqalgan xato — dasturchi yorliqlarni faqat o'z kodiga asoslanib to'ldiradi, uchinchi tomon SDK larini unutadi. Firebase, AppsFlyer, Facebook SDK va boshqalar dasturchining qo'shimcha kodi holda avtomatik ma'lumot yig'adi. Masalan, Firebase Analytics foydalanish ma'lumotlarini (hodisalar, ekranlar) va identifikatorlarni (Instance ID, IDFV) yig'adi.
Tavsiya: har bir integratsiya qilingan SDK uchun hujjatlardagi “Data Collected” bo'limini o'qing va yorliqlarga tegishli toifalarni qo'shing. AppsFlyer (2024) har bir SDK versiyasi uchun yig'ilgan ma'lumotlar ro'yxatini e'lon qiladi, bu dasturchilarga yorliqlarni tekshirishda yordam beradi.
Ko'plab dasturchilar ma'lumotlarni not linked deb belgilaydi, holbuki ular hisob bilan bog'liq. Foydalanuvchining hisobi bo'lsa va siz uning ismi yoki emailini saqlasangiz — bu linked. Crash jurnallarini hisobga bog'lamasdan yig'sangiz — bu not linked. Bog'lashdagi xato foydalanuvchini chalg'itish deb baholanishi mumkin.
Linked ma'lumotlar sariq rangda ko'rsatiladi va foydalanuvchining ko'proq e'tiborini tortadi. Muayyan ma'lumot turining linked ekanligiga ishonchingiz komil bo'lmasa, linked ko'rsatish va ko'rib chiqishda tushuntirish berish yaxshiroq. Apple haddan tashqari deklaratsiya uchun jarima solmaydi, lekin yetarli bo'lmagani uchun rad etishi mumkin.
Ma'lumotlar uchinchi tomonlarga uzatilsa va maqsadli reklama uchun ishlatilsa, bu “Kuzatish uchun ishlatiladigan ma'lumotlar” sifatida belgilanishi kerak. Ba'zi dasturchilar ma'lumotlarni analitika bahonasida uzatib, kuzatishni yashiradilar — bu Apple qoidalarini buzadi va taqiqqa olib kelishi mumkin.
Apple qoidasi: ma'lumotlar uchinchi tomonga uzatilsa va reklamani shaxsiylashtirish yoki atributsiya uchun ishlatilsa — bu kuzatish. Ilova o'zi reklama ko'rsatmasa ham, lekin Google Ads ni o'rnatish atributsiyasi uchun ishlatsa, ko'rish ma'lumotlari kuzatish hisoblanadi.
Joriy ma'lumot yig'ish mantig'iga mos kelmaydigan eski yorliqlar — ilovani uzoq muddat saqlashda keng tarqalgan muammo. Dasturchilar SDK larni o'zgartiradi, yangi funksiyalar qo'shadi, lekin yorliqlarni yangilashni unutadi. Natijada foydalanuvchi dolzarb bo'lmagan ma'lumotni ko'radi, bu ishonchni kamaytiradi.
Eng yaxshi amaliyot: ma'lumotlar bilan bog'liq har bir kod o'zgarishida yorliqlar va manifestni tekshiring. PrivacyInfo.xcprivacy fayllari yoki SDK ro'yxati o'zgarganda yorliqlarni yangilash zarurligi haqida ogohlantiradigan CI tekshiruvini sozlash tavsiya etiladi.
Tez-tez beriladigan savollar
Ha, yorliqlar barcha ilovalar, jumladan bepul, bepul xaridli va pullik ilovalar uchun majburiy. Istisno faqat “Bolalar uchun” toifasidagi ilovalar, bu yerda qoidalar yanada qattiqroq.
App Store Connect to'ldirilgan yorliqlarsiz qurilmani ko'rib chiqishga yuborishga ruxsat bermaydi. Nashr qilingan ilovalar do'konda qoladi, lekin yorliqlarsiz yangilanish ololmaydi.
Ma'lumot yig'ish mantig'idagi har bir o'zgarishda: yangi SDK qo'shilganda, foydalanish maqsadlari o'zgarganda, ma'lumotlar uchinchi tomonlarga uzatilganda. Kamida 6-12 oyda bir marta yorliqlarni joriy kod bilan muvofiqligini tekshiring.
Ha, har qanday foydalanuvchi Apple formasi orqali yorliqlarning ilovaning real xatti-harakatiga mos kelmasligi haqida xabar berishi mumkin. Bir necha shikoyat olingandan so'ng, Apple tekshiruv o'tkazishi va keyingi yangilanishni rad etishi mumkin.
Ha, yorliqlar ilova sahifasida ko'rinadi, lekin qidiruv natijalarida yoki tavsiyalarda ko'rsatilmaydi. Foydalanuvchi ularni o'rnatishdan oldin ilova sahifasini ko'rish vaqtida ko'radi.
Xulosa
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.