Privacy Nutrition Label — App Store-da istifadəçiyə tətbiqin hansı məlumatları topladığını və hansı məqsədlər üçün istifadə etdiyini göstərən məxfilik etiketləridir. Apple hər bir tətbiqin nəşr və ya yeniləmədən əvvəl doldurulmuş etiketinin olmasını tələb edir. Apple App Privacy Details məlumatlarına görə, məxfilik etiketləri 14 məlumat kateqoriyasını və analitikadan məzmun fərdiləşdirməsinə qədər 5 toplama məqsədini əhatə edir.
Əsas məqamlar
Privacy Nutrition Label — App Store-da tətbiq səhifəsində məlumat toplanması haqqında xülasəni göstərən vizual blokdur. Apple bu etiketləri 2020-ci ilin dekabrında məhsullardakı qida dəyərinə analoq olaraq təqdim etdi: kalori və yağların əvəzinə istifadəçi tətbiqin hansı məlumatları topladığını və onların necə istifadə edildiyini görür.
Etiketlər iki bölmədən ibarətdir: “İzləmə üçün istifadə olunan məlumatlar” və “İstifadəçi ilə əlaqəli məlumatlar”. Birincidə izləmə üçün üçüncü tərəflərə ötürülən məlumatlar göstərilir. İkincidə — tətbiqin topladığı və istifadəçinin hesabı və ya cihazı ilə əlaqələndirdiyi bütün məlumatlar.
Hər bir məlumat elementi rənglə işarələnir: sarı (məlumat istifadəçi ilə əlaqəlidir) və ya yaşıl (məlumat istifadəçi ilə əlaqəli deyil). Nə qədər çox sarı etiket varsa, istifadəçi hansı məlumatların toplandığına bir o qədər diqqət yetirir. Adjust (2024) məlumatlarına görə, 8+ sarı etiketi olan tətbiqlərin quraşdırma konversiyaları 22% azdır.
Etiketlərin doldurulması App Store Connect-də veb interfeys vasitəsilə həyata keçirilir. Tərtibatçı suallara cavab verir: tətbiq müəyyən bir məlumat növünü toplayırmı, istifadəçi ilə əlaqəlidirmi və hansı məqsədlər üçün istifadə olunur. Apple etiketlərin doğruluğunu proqram yolu ilə yoxlamır, lakin bəyannamənin real davranışa uyğunsuzluğu rədd edilməyə səbəb ola bilər.
Apple etiketləri WWDC 2020-də iOS 14 ilə birlikdə elan etdi. İlkin olaraq onlar ATT və Privacy Manife də daxil olmaqla daha geniş məxfilik təşəbbüsünün bir hissəsi idi. Etiketlərin doldurulması 2020-ci il dekabrın 8-dən bütün tətbiqlər və yeniləmələr üçün məcburi oldu.
Etiketlər Apple-ın tənzimləyicilərin və istifadəçilərin məlumat toplanmasına artan diqqətinə cavabı idi. GDPR və CCPA-dan fərqli olaraq, rəsmi razılıq tələb edən, Apple şəffaflığa diqqət yetirdi: istifadəçi tətbiqi quraşdırmazdan əvvəl hansı məlumatların toplandığını dərhal görür.
2022-ci ildə Apple etiketlərə interaktivlik əlavə etdi: istifadəçi hər bir kateqoriyanı vurub məlumatların hansı məqsədlər üçün istifadə edildiyini görə bilər. 2024-cü ildə Apple etiketlərin ikili fayl daxilində Privacy Manife-də bəyan edilmiş məlumatlara uyğun olmasını tələb etməyə başladı.
Google 2022-ci ilin aprelində Google Play-də analoji “Məlumat Təhlükəsizliyi” (Data Safety) bölməsini təqdim etdi. Əsas fərq: Google etiketləri avtomatik kod skan etmə vasitəsilə yoxlayır və tərtibatçıdan təsdiq tələb edə bilər, Apple isə tərtibatçının bəyannaməsinə etibar edir və icmal zamanı yoxlayır.
Bundan əlavə, Google Play təhlükəsizlik tədbirlərinin göstərilməsini tələb edir (saxlama və ötürmə zamanı məlumatların şifrələnməsi, təhlükəsizlik proqramlarına uyğunluq). Apple bu məlumatı tələb etmir, lakin ATS (App Transport Security) kimi məcburi funksiyalar vasitəsilə tələblərin yerinə yetirilməsini yoxlayır.
Apple etiketləri doldurmaq üçün tətbiq kodunu analiz etmir — tərtibatçı müstəqil olaraq toplanan məlumatları bəyan edir. Lakin 2024-cü ildə Apple etiketləri ikili fayl daxilindəki Privacy Manife ilə müqayisə etməyə başladı ki, bu da prosesi daha rəsmiləşdirir.
Tərtibatçı App Store Connect-ə daxil olur → tətbiqi seçir → “Tətbiqin məxfiliyi” bölməsi → “Məxfilik etiketləri”. 14 məlumat kateqoriyasının hər biri ilə bağlı sualları olan anket açılır. Hər kateqoriya üçün göstərmək lazımdır: bu məlumat növünü toplayırsınızmı, istifadəçi ilə əlaqəlidirmi (linked) və hansı məqsədlər üçün.
Toplama məqsədlərinə daxildir: üçüncü tərəf reklamı, tərtibatçı analitikası, məhsulun inkişafı (Product Personalization), məzmunun fərdiləşdirilməsi, tətbiq funksiyalarının yerinə yetirilməsi (App Functionality). Bir məlumat kateqoriyası bir neçə məqsəd üçün istifadə edilə bilər. Vacib: məlumatlar üçüncü tərəflərə ötürülürsə, bu izləmə kimi qeyd edilməlidir.
Dəyişiklikləri saxladıqdan sonra Apple 24 saat ərzində App Store-da göstərilən etiketlərin yeni versiyasını yaradır. Yeni qurğu göndərərkən etiketlər avtomatik yoxlanılır: əgər onlar doldurulmayıbsa, göndərmə düyməsi bloklanır. Apple Developer (2024) məlumat toplama məntiqində hər dəyişiklikdə etiketlərin yenilənməsini tövsiyə edir.
2024-cü ilə qədər etiketlər tam self-reported idi — Apple tərtibatçının cavablarına etibar edirdi. Privacy Manife-in yaranması və etiketlərin manifestlə inteqrasiyası ilə Apple avtomatik müqayisəyə başladı. Məsələn, manifest reklam üçün identifikatorların (IDFA) toplanmasını bəyan edirsə, lakin etiketlər bu kateqoriyanı qeyd etmirsə, App Store Connect xəbərdarlıq göstərir.
Lakin tam avtomatik yoxlama hələ yoxdur. Tərtibatçı hər iki məlumat mənbəyini (etiketlər + manifest) aktual vəziyyətdə saxlamağa borcludur. Uyğunsuzluq icmalçı tərəfindən əl ilə yoxlama zamanı aşkar edilə bilər, xüsusən də böyük yeniləmələr və ya çoxlu məlumatı olan tətbiqlər üçün.
| Yoxlama metodu | Apple | |
|---|---|---|
| Self-reporting | Bəli, əsas | Bəli, əsas |
| Avtomatik kod yoxlaması | Qismən (2024-dən, manifest vasitəsilə) | Bəli |
| İcmalçı tərəfindən əl ilə yoxlama | Şübhə olduqda | Nadir hallarda |
Apple məlumatları 3 bölmədə qruplaşdırılmış 14 kateqoriyaya ayırır: izləmə üçün istifadə olunan məlumatlar; istifadəçi ilə əlaqəli məlumatlar; istifadəçi ilə əlaqəli olmayan məlumatlar. Əsas kateqoriyaları nəzərdən keçirək.
“Əlaqə məlumatları” kateqoriyasına ad, email, telefon, fiziki ünvan daxildir. “Identifikatorlar” kateqoriyası — IDFA, User ID, istifadəçi adı. Tətbiq sosial şəbəkələr vasitəsilə girişdən istifadə edir və istifadəçinin emailini alırsa, bu kateqoriyanı “Funksiyaların yerinə yetirilməsi” məqsədi ilə göstərmək lazımdır.
“Ödəniş məlumatları” kateqoriyası alışlar haqqında məlumatları əhatə edir: kart nömrəsi (Apple Pay istifadə edilməzsə), alış tarixçəsi. Apple Pay bu kateqoriyanın göstərilməsini tələb etmir, çünki Apple ödənişləri öz tərəfində emal edir və məlumatları tərtibatçıya ötürmür.
“İstifadə məlumatları” kateqoriyası qarşılıqlı əlaqə jurnallarını, reklam kliklərini, səhifə baxışlarını, sessiya müddətini əhatə edir. Əksər tətbiqlər bu məlumatları analitika üçün toplayır. Vacib: məlumatlar üçüncü tərəflərə (Google Analytics, Firebase) ötürülürsə, “Analitika” məqsədini qeyd etmək lazımdır.
“Diaqnostika” kateqoriyası crash jurnallarını, performans məlumatlarını, işəsalma hesabatlarını əhatə edir. Bu məlumatlar adətən istifadəçi ilə əlaqəli deyil (not linked) və ümumiləşdirilmiş formada toplanır. Buna baxmayaraq, tətbiq Crashlytics və ya Sentry istifadə edirsə, onlar etiketlərdə əks olunmalıdır.
“İstifadəçi məzmunu” kateqoriyası foto, video, audio, fayl, istifadəçi tərəfindən yaradılan məzmunu (mesajlar, şərhlər) əhatə edir. Tətbiq foto və ya fayllara giriş tələb edirsə, bu kateqoriya məcburidir. Tətbiq yalnız fotoları oxusa belə, bu məlumat toplanması hesab olunur.
“Alış tarixçəsi” kateqoriyası — tətbiqdaxili alışlar, abunələr, ödənişlər haqqında ümumiləşdirilmiş məlumatlar. “Maliyyə məlumatları” ilə qarışdırmayın. Alış tarixçəsi əməliyyatların metaməlumatlarıdır, ödəniş rekvizitləri deyil.
Yeni və ya yenilənən tətbiq üçün App Store Connect-də Privacy Nutrition Label-in doldurulması üzrə addım-addım təlimat.
Etiketləri doldurmazdan əvvəl məlumat toplayan bütün SDK və xidmətlərin tam siyahısını tərtib edin: Firebase, AppsFlyer, Google Ads, Facebook SDK, Sentry, Amplitude. Hər SDK üçün onun hansı məlumatları topladığını və onları üçüncü tərəflərə ötürüb-ötürmədiyini yoxlayın. Adjust (2024) hər SDK üçün məlumat növləri, məqsədlər və əlaqələndirmə cədvəlinin aparılmasını tövsiyə edir.
Birbaşa kodunuzun hansı məlumatları topladığını müəyyən edin. Məsələn, tətbiq axtarış tarixçəsini saxlayır və onu istifadəçi hesabı ilə əlaqələndirirsə — bunlar “Məhsulun inkişafı” məqsədi üçün linked “İstifadə məlumatları”dır. Həmişə məlumatların üçüncü tərəflərə (reklam şəbəkələri, analitika) ötürülmədiyini yoxlayın.
App Store Connect-də tətbiqi seçin → “Tətbiqin məxfiliyi” bölməsi. “Başla” düyməsini vurun və tətbiqinizin izləmə üçün məlumat toplayıb-toplamadığını seçin. Yoxsa, anketə keçin. 14 məlumat kateqoriyasının hamısı üçün ardıcıl olaraq hər suala cavab verin.
Nümunə: tətbiq Firebase Analytics istifadə edirsə, “İstifadə məlumatları” kateqoriyası üçün “Bəli” cavabını verin, linked (Firebase məlumatları Instance ID ilə əlaqələndirir) və “Analitika” məqsədini göstərin. Həmçinin Firebase Crashlytics istifadə edirsinizsə, “Diaqnostika” kateqoriyasını “Məhsulun inkişafı” məqsədi ilə əlavə edin.
Doldurduqdan sonra etiketləri yadda saxlayın. Bir neçə tətbiqiniz varsa, etiketlər hər biri üçün unikaldır — surəti çıxarmaq nəzərdə tutulmayıb. Etiketləri məlumat toplama məntiqində hər dəyişiklikdə yeniləyin, əks halda köhnə etiketlər yeni funksionallığa uyğun gəlməyə bilər.
// Nümunə: analitika üçün məlumat göndərilməsinin yoxlanılması
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
])
}
}
Nəşr olunmuş tətbiq üçün etiketləri yeniləmək üçün App Store Connect-də tətbiq versiyasını açın və “Tətbiqin məxfiliyi” bölməsində dəyişikliklər edin. Dəyişikliklər icmaldan keçdikdən sonra qüvvəyə minir. Yeni etiketlər istifadəçilərə yeniləmənin nəşrindən sonra 24 saat ərzində göstərilir.
Vacib: etiketlərdən məlumatların silinməsi (məsələn, məlumatları üçüncü tərəflərə ötürməyi dayandırdınız) yeni qurğu tələb etmir — App Store Connect-də etiketləri dəyişmək kifayətdir. Yeni məlumatların əlavə edilməsi həm etiketlərin dəyişdirilməsini, həm də kodda Privacy Manife-in müvafiq yenilənməsini tələb edir.
Tərtibatçılar tez-tez etiketləri doldurarkən səhvlərə yol verirlər ki, bu da yeniləmələrin rədd edilməsinə və ya istifadəçi şikayətlərinə səbəb olur.
Ən çox yayılmış səhv — tərtibatçı etiketləri yalnız öz koduna əsasən doldurur, üçüncü tərəf SDK-ları unudur. Firebase, AppsFlyer, Facebook SDK və digərləri tərtibatçının əlavə kodu olmadan avtomatik məlumat toplayır. Məsələn, Firebase Analytics istifadə məlumatlarını (hadisələr, ekranlar) və identifikatorları (Instance ID, IDFV) toplayır.
Tövsiyə: hər inteqrasiya olunmuş SDK üçün sənədləşmədə “Data Collected” bölməsini oxuyun və etiketlərə müvafiq kateqoriyaları əlavə edin. AppsFlyer (2024) hər SDK versiyası üçün toplanan məlumatların siyahısını dərc edir ki, bu da tərtibatçılara etiketləri yoxlamağa kömək edir.
Bir çox tərtibatçı məlumatları not linked kimi qeyd edir, halbuki onlar hesabla əlaqəlidir. İstifadəçinin hesabı varsa və siz onun adını və ya emailini saxlayırsınızsa — bu linkeddir. Crash jurnallarını hesaba bağlamadan toplayırsınızsa — bu not linkeddir. Əlaqələndirmədə səhv istifadəçini çaşdırmaq kimi qiymətləndirilə bilər.
Linked məlumatlar sarı rənglə göstərilir və istifadəçinin daha çox diqqətini çəkir. Müəyyən bir məlumat növünün linked olub-olmadığına əmin deyilsinizsə, linked göstərmək və icmal zamanı izahat vermək daha yaxşıdır. Apple həddindən artıq bəyannaməyə görə cərimə etmir, lakin kifayət etmədikdə rədd edə bilər.
Məlumatlar üçüncü tərəflərə ötürülür və hədəfli reklam üçün istifadə olunursa, bu “İzləmə üçün istifadə olunan məlumatlar” kimi qeyd edilməlidir. Bəzi tərtibatçılar məlumatları analitika adı altında ötürərək izləməni gizlədir — bu Apple qaydalarını pozur və qadağaya səbəb ola bilər.
Apple qaydası: məlumatlar üçüncü tərəfə ötürülür və reklamın fərdiləşdirilməsi və ya atribusiyası üçün istifadə olunursa — bu izləmədir. Tətbiq özü reklam göstərməsə belə, lakin Google Ads-i quraşdırma atribusiyası üçün istifadə edirsə, baxış məlumatları izləmə hesab olunur.
Cari məlumat toplama məntiqinə uyğun gəlməyən köhnə etiketlər — tətbiqin uzun müddətli saxlanması zamanı geniş yayılmış problemdir. Tərtibatçılar SDK-ları dəyişir, yeni funksiyalar əlavə edir, lakin etiketləri yeniləməyi unudurlar. Nəticədə istifadəçi aktual olmayan məlumat görür ki, bu da etibarı azaldır.
Ən yaxşı təcrübə: məlumatlarla bağlı hər kod dəyişikliyində etiketləri və manifesti yoxlayın. PrivacyInfo.xcprivacy faylları və ya SDK siyahısı dəyişdikdə etiketlərin yenilənməsi zərurəti barədə xəbərdarlıq edən CI yoxlaması qurmaq tövsiyə olunur.
Tez-tez verilən suallar
Bəli, etiketlər bütün tətbiqlər, o cümlədən pulsuz, pulsuz alışları olan və ödənişli tətbiqlər üçün məcburidir. İstisna yalnız “Uşaqlar üçün” kateqoriyasındakı tətbiqlərdir, burada qaydalar daha sərtdir.
App Store Connect doldurulmuş etiketlər olmadan qurğunu icmala göndərməyə icazə verməz. Artıq nəşr olunmuş tətbiqlər mağazada qalır, lakin etiketlər olmadan yeniləmə ala bilməz.
Məlumat toplama məntiqində hər dəyişiklikdə: yeni SDK əlavə edildikdə, istifadə məqsədləri dəyişdikdə, məlumatlar üçüncü tərəflərə ötürüldükdə. Ən azı 6-12 ayda bir etiketləri cari kodla uyğunluğunu yoxlayın.
Bəli, istənilən istifadəçi Apple forması vasitəsilə etiketlərin tətbiqin real davranışına uyğunsuzluğu barədə məlumat verə bilər. Bir neçə şikayət aldıqdan sonra Apple yoxlama apara və növbəti yeniləməni rədd edə bilər.
Bəli, etiketlər tətbiq səhifəsində görünür, lakin axtarış nəticələrində və ya tövsiyələrdə göstərilmir. İstifadəçi onları quraşdırmadan əvvəl tətbiq səhifəsinə baxarkən görür.
Nəticə
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.
Həm də oxuyun