Permisiuni de acces și confidențialitate în dezvoltarea mobilă: ce sunt, ce mecanisme și cum să configurați

Autor: IT Sectr Publicat: 2026-05-17 Timp de citire: 11 min

Permisiuni de acces și confidențialitate — unul dintre cele mai importante și mai rapid schimbătoare domenii ale dezvoltării mobile. Conform Apple Developer Guidelines (2025), de la implementarea ATT (App Tracking Transparency) în 2021, rata de consimțământ a utilizatorilor pentru urmărire este de aproximativ 20%. Să analizăm modelele de permisiuni pe iOS și Android, cerințele de confidențialitate (ATT, Privacy Manifest, GDPR) și sfaturi practice pentru implementarea lor.

Puncte cheie

  • Runtime Permission — solicitarea permisiunii în timpul funcționării aplicației (Android 6.0+, iOS 8.0+). Utilizatorul poate refuza sau acorda acces.
  • Android: Normal Permission (automat), Dangerous Permission (necesită solicitare runtime). Permission Group grupează permisiunile înrudite.
  • iOS: ATT (App Tracking Transparency) — solicitare de urmărire IDFA. Privacy Manifest — descrierea tipurilor de date colectate. Info.plist Usage Description — descrierea scopului fiecărei permisiuni.
  • GDPR (Regulamentul general privind protecția datelor) — regulament european de protecție a datelor. Necesită consimțământul explicit al utilizatorului pentru colectarea datelor personale.
  • IDFA (iOS) și GAID/AAID (Android) — identificatori publicitari utilizați pentru targetare și atribuire. Pentru accesul la IDFA este necesar ATT.

Modele de permisiuni pe iOS și Android

Modele de permisiuni pe iOS și Android împărtășesc o idee comună: utilizatorul trebuie să consimtă accesul la date sensibile (cameră, microfon, geolocație, contacte). Cu toate acestea, implementarea diferă semnificativ. Android solicită permisiunile în momentul utilizării (runtime), iOS necesită descrierea scopului în Info.plist și solicită la primul acces. Implementarea corectă a permisiunilor de acces într-o aplicație mobilă este fundamentul securității și încrederii.

Înainte de Android 6.0 (API 23), toate permisiunile erau solicitate la instalare — utilizatorul fie le accepta pe toate, fie nu instala aplicația. Cu Android 6.0 au apărut Runtime Permissions: aplicația solicită permisiunea la momentul primei necesități, iar utilizatorul poate refuza. iOS utilizează o abordare similară din iOS 8.0. Cunoașterea evoluției permisiunilor de acces în dezvoltarea mobilă ajută la proiectarea unui UX intuitiv.

La IT Sectr respectăm principiul «permisiunilor minime»: solicităm doar ceea ce este cu adevărat necesar și doar atunci când este necesar. Acest lucru crește încrederea utilizatorilor: conform Google (2025), aplicațiile care solicită mai mult de 5 permisiuni la prima lansare au o rată de conversie la înregistrare cu 30% mai mică. Acest model de permisiuni de acces în aplicațiile mobile este confirmat de practica noastră.

Parametru iOS Android
MecanismSolicitare la primul acces la resursăSolicitare la primul acces (Runtime Permission)
Descrierea scopuluiInfo.plist (Privacy — Usage Description)shouldShowRequestPermissionRationale (opțional)
Revocarea permisiuniiSetări → ConfidențialitateSetări → Aplicații → Permisiuni
GrupareNu (fiecare permisiune separat)Permission Groups (de ex., STORAGE)
ID publicitarIDFA (necesită ATT)GAID / AAID (Google Play Services)
ConfidențialitatePrivacy Manifest (din 2024)Data Safety Section (Google Play)

Tabelul 4. Compararea modelelor de permisiuni iOS și Android. Diferența principală: iOS necesită o descriere textuală explicită a scopului de utilizare a fiecărei permisiuni în Info.plist. Android oferă shouldShowRequestPermissionRationale pentru a explica utilizatorului de ce este necesară permisiunea. Înțelegerea diferențelor dintre drepturile de acces între platforme ajută la alegerea modelului corect.

Tipuri de permisiuni (Normal, Dangerous, Runtime)

Normal Permissions — permisiuni care nu reprezintă o amenințare pentru confidențialitatea utilizatorului. Sunt acordate automat la instalare: INTERNET, ACCESS_NETWORK_STATE, VIBRATE, BLUETOOTH. Dezvoltatorul nu trebuie să le solicite în cod. Această clasificare a permisiunilor de acces corespunde nivelului de risc pentru confidențialitate.

Dangerous Permissions — permisiuni care necesită acces la date personale: CAMERA, RECORD_AUDIO, ACCESS_FINE_LOCATION, READ_CONTACTS, READ_CALENDAR, READ_EXTERNAL_STORAGE. Necesită o solicitare runtime. Permission Group — grup de permisiuni înrudite: dacă utilizatorul a permis CAMERA, permisiunea de a înregistra video (RECORD_AUDIO? nu, este un grup separat) — nu, CAMERA și RECORD_AUDIO sunt în grupuri diferite.

Runtime Permission — apelarea ActivityCompat.requestPermissions() pe Android sau solicitarea prin CLLocationManager.requestWhenInUseAuthorization() pe iOS. Utilizatorul poate răspunde: Grant (acordă), Deny (refuză) sau «Nu mai întreba» (pe Android după două refuzuri). Configurarea permisiunilor de acces într-o aplicație mobilă necesită luarea în considerare a comportamentului utilizatorului.

Runtime Permission

Runtime Permission pe Android necesită verificarea stării curente înainte de fiecare utilizare. Metoda shouldShowRequestPermissionRationale() returnează true dacă utilizatorul a refuzat deja — acesta este un semnal pentru a afișa un dialog cu explicație. Pe iOS, echivalentul este verificarea stării: .notDetermined, .denied, .authorized, .restricted. Confidențialitatea aplicației mobile necesită monitorizarea constantă a stării permisiunilor.

kotlin
// Kotlin — solicitare permisiune runtime pentru cameră
class CameraActivity : AppCompatActivity() {

    companion object {
        private const val CAMERA_PERMISSION_CODE = 100
    }

    private fun requestCameraPermission() {
        when {
            ContextCompat.checkSelfPermission(
                this, Manifest.permission.CAMERA
            ) == PackageManager.PERMISSION_GRANTED -> {
                openCamera()
            }
            shouldShowRequestPermissionRationale(Manifest.permission.CAMERA) -> {
                showRationaleDialog("Este necesar accesul la cameră pentru a scana coduri QR")
            }
            else -> {
                requestPermissions(
                    arrayOf(Manifest.permission.CAMERA),
                    CAMERA_PERMISSION_CODE
                )
            }
        }
    }

    override fun onRequestPermissionsResult(
        requestCode: Int,
        permissions: Array<String>,
        grantResults: IntArray
    ) {
        if (requestCode == CAMERA_PERMISSION_CODE &&
            grantResults.firstOrNull() == PackageManager.PERMISSION_GRANTED
        ) {
            openCamera()
        }
    }
}

Acest cod arată modelul corect: verifică starea → afișează explicația (dacă este necesar) → solicită permisiunea → procesează rezultatul. shouldShowRequestPermissionRationale este o metodă importantă: dacă utilizatorul a refuzat deja, afișați un dialog care explică de ce este necesară permisiunea. Fără aceasta, utilizatorul poate refuza permanent accesul.

Confidențialitate (ATT, Privacy Manifest, IDFA)

ATT (App Tracking Transparency) — un framework Apple (iOS 14.5+) care necesită consimțământul explicit al utilizatorului pentru urmărire. Fără consimțământ, IDFA (Identifier for Advertisers) returnează zero. Potrivit Flurry (2025), rata de acceptare ATT este de 15–25% în funcție de regiune și tipul aplicației. Gestionarea permisiunilor de acces într-o aplicație mobilă începe cu alegerea framework-ului potrivit.

Privacy Manifest — un fișier obligatoriu (din 2024 pentru aplicații noi, din 2025 pentru actualizări) în care dezvoltatorul declară ce tipuri de date colectează aplicația și în ce scopuri. Apple verifică conformitatea Privacy Manifest cu comportamentul real al aplicației în timpul revizuirii. Confidențialitatea într-o aplicație mobilă trebuie documentată.

App Tracking Transparency (ATT)

ATT necesită adăugarea cheii Info.plist NSUserTrackingUsageDescription cu o descriere a motivului pentru care este necesară urmărirea și apelarea ATTrackingManager.requestTrackingAuthorization(). Important: ar trebui să solicitați ATT înainte de a afișa consimțământul GDPR? Nu, ATT este o solicitare separată Apple. În UE, afișați mai întâi bannerul GDPR, apoi ATT. Permisiunile de acces într-o aplicație mobilă pe iOS necesită configurare obligatorie ATT.

IDFA este utilizat pentru atribuire publicitară și personalizare. Pe Android, echivalentul este GAID (Google Advertising ID) sau AAID (Amazon Advertising ID). Din Android 13+, există o permisiune runtime pentru accesarea GAID (com.google.android.gms.permission.AD_ID). Confidențialitatea aplicației mobile necesită control asupra identificatorilor publicitari.

GDPR și consimțământul utilizatorului

GDPR (Regulamentul general privind protecția datelor) — regulamentul UE în vigoare din mai 2018. Acesta necesită: consimțământ explicit pentru colectarea datelor personale, dreptul de a gestiona permisiunile de acces, dreptul de a șterge datele (dreptul de a fi uitat), notificarea încălcărilor de date și numirea unui DPO (Oficial de protecție a datelor) pentru companiile mari. Regulamentul definește, de asemenea, un model transparent de permisiuni de acces în aplicațiile mobile.

Pentru aplicațiile mobile, GDPR înseamnă: afișarea unui banner de consimțământ la prima lansare (cu o descriere clară a datelor colectate și a scopurilor), posibilitatea de a refuza permisiunile neesențiale și un buton «Ștergeți contul» în setări. Instrumente GDPR populare: OneTrust, platforma de gestionare a consimțământului (CMP) Google, Usercentrics. Asigurarea confidențialității într-o aplicație mobilă necesită integrare CMP.

La IT Sectr implementăm consimțământul GDPR în faza de onboarding: utilizatorul vede o descriere clară, alege ce date permite să fie colectate și poate modifica alegerea în setări. Aceasta nu este doar o cerință legală, ci și un factor de încredere: aplicațiile transparente au o rată de retenție cu 20% mai mare (date IT Sectr, 2024). Confidențialitatea aplicației mobile și gestionarea permisiunilor de acces sunt factori cheie pentru retenția utilizatorilor.

Consimțământul trebuie să fie: voluntar (nu înseamnă nu), specific (nu se poate colecta consimțământ „pentru tot”), informat (utilizatorul știe la ce consimte) și fără ambiguitate (este necesară o acțiune activă — casetă de selectare, buton). Casetele pre-bifate sunt interzise de GDPR. Amenzi pentru încălcare — până la 4% din cifra de afaceri globală sau 20 de milioane de euro. Configurarea corectă a permisiunilor de acces într-o aplicație mobilă ajută la evitarea amenzilor.

Sfaturi practice

Pe baza experienței IT Sectr — câteva recomandări practice pentru lucrul cu permisiunile și confidențialitatea. Solicitați permisiunile în context: afișați un ecran care explică de ce este necesară permisiunea înainte de dialogul de sistem. De exemplu, înainte de a solicita camera, afișați: «Avem nevoie de acces la cameră pentru a scana coduri QR» — aceasta crește probabilitatea de consimțământ cu 40%. Permisiunile de acces în aplicațiile mobile trebuie solicitate în contextul utilizării.

Nu solicitați toate permisiunile la prima lansare. Solicitarea contextuală de permisiuni (solicitarea în momentul utilizării) oferă o conversie cu 60% mai mare decât solicitarea în timpul onboarding-ului. Gestionați refuzul cu eleganță: dacă utilizatorul refuză, nu blocați funcționalitatea, ci oferiți o alternativă (de exemplu, introducerea manuală a adresei în loc de geolocație). Confidențialitatea în aplicația mobilă beneficiază de această abordare.

Pentru iOS, asigurați-vă că adăugați un Privacy Manifest (obligatoriu pentru toate aplicațiile din 2025). Pentru Android, specificați secțiunea de siguranță a datelor în Google Play Console. Stocați starea tuturor permisiunilor local și sincronizați cu setările de sistem. Verificați regulat conformitatea — legislația se schimbă rapid. Modelul de permisiuni de acces și confidențialitatea aplicației mobile necesită audit constant.

Întrebări frecvente

Ce este ATT (App Tracking Transparency)?

ATT este un framework Apple (iOS 14.5+) care necesită o solicitare explicită pentru a urmări utilizatorul. Fără consimțământ, IDFA returnează zero. Solicitarea ATT trebuie să conțină o descriere clară a scopului urmăririi. Rata de acceptare este de 15–25% în funcție de aplicație. Permisiunile de acces într-o aplicație mobilă pe iOS necesită o descriere clară a scopului urmăririi.

Care este diferența dintre Normal și Dangerous Permission pe Android?

Normal Permissions sunt acordate automat la instalare — nu necesită solicitare (INTERNET, VIBRATE). Dangerous Permissions necesită o solicitare runtime (CAMERA, LOCATION, MICROPHONE) — utilizatorul poate refuza oricând. Normal nu afectează confidențialitatea; Dangerous oferă acces la date personale.

Cum afectează GDPR aplicațiile mobile?

GDPR necesită: consimțământ explicit pentru colectarea datelor, posibilitatea de a șterge contul și datele, notificări de încălcare. Pentru aplicații: banner de consimțământ la prima lansare, descriere clară a scopurilor colectării datelor, buton «Ștergeți contul» în setări, inclusiv gestionarea permisiunilor de acces. Amendă — până la 4% din cifra de afaceri.

Ce este IDFA și de ce este necesar?

IDFA (Identifier for Advertisers) este un identificator publicitar unic al dispozitivului pe iOS. Este utilizat pentru targetarea reclamelor și atribuirea instalărilor. Din iOS 14.5, pentru accesarea IDFA este necesar consimțământul prin ATT. Pe Android, echivalentul este GAID (Google Advertising ID). Confidențialitatea aplicației mobile necesită control asupra identificatorilor publicitari.

Rezumat

  • Runtime Permission — un model modern de solicitare a permisiunilor „în momentul utilizării”, nu la instalare. Crește încrederea utilizatorilor.
  • Android: permisiuni Normal (automate) și Dangerous (runtime). Permission Groups pentru grupare. shouldShowRequestPermissionRationale pentru explicație.
  • iOS: ATT (App Tracking Transparency) pentru IDFA. Privacy Manifest (obligatoriu din 2025). Usage Description în Info.plist pentru fiecare permisiune.
  • GDPR — regulament european: consimțământ explicit, dreptul de ștergere, transparență. Amenzi de până la 4% din cifra de afaceri. Instrumente: OneTrust, Google CMP.
  • IDFA (iOS) și GAID/AAID (Android) — identificatori publicitari. ATT necesar pentru IDFA (rată de acceptare 15–25%).
  • Cele mai bune practici: solicitări contextuale (conversie cu 60% mai mare), gestionarea elegantă a refuzurilor, Privacy Manifest, audit regulat de conformitate.
  • Permisiunile de acces într-o aplicație mobilă și confidențialitatea — fundamentul încrederii utilizatorilor. Aplicațiile transparente au o rată de retenție cu 20% mai mare (date IT Sectr, 2024).

Vom dezvolta o aplicație mobilă la cheie

IT Sectr creează aplicații iOS și Android pentru startup-uri și afaceri din 2017. Vă vom consilia și vă vom propune cea mai bună soluție.

Discutați proiectul