Geheugenkaarten onder Android
Tot en met Android 4.3 Jelly Bean konden apps de geheugenkaart naar wens beschrijven en lezen. Elke app kon alle foto's, video's en andere bestanden benaderen die op de kaart waren opgeslagen.
Vanaf Android 4.4 KitKat konden apps omwille van de veiligheid de geheugenkaart niet meer benaderen. Ze hadden alleen nog lees- en schrijftoegang tot de app-specifieke map /Android/data/<package>/files. Via speciale API's konden bepaalde delen van de kaart daarnaast gelezen worden, zoals een gemeenschappelijk map voor foto's of films. Dat betekent ook dat apps niet meer in hun geheel inclusief alle data naar de kaart verplaatst kunnen worden.
Sinds Android 5 Lollipop kunnen apps via een nieuwe Document-API weer willekeurige delen van de kaart lezen en schrijven. Die moet je dan via een systeemdialoog wel specifiek selecteren en vrijgeven.
Bij Android 6 Marshmallow hielden de ontwikkelaars rekening met het feit dat veel goedkope toestellen maar weinig flashgeheugen hebben en gebruikers dat graag uitbreiden met een geheugenkaart. Die kan door het Android-toestel worden 'geadopteerd' en wordt dan op een speciale manier geformatteerd. Vervolgens werkt de kaart bijna alsof het om intern geheugen gaat. Apps en gegevens kunnen er dan naartoe worden verplaatst. Een op die manier geformatteerde kaart kan echter niet meer buiten het toestel gelezen worden.
Android 7 Nougat biedt met de klasse StorageVolume nieuwe API's, die apps na bevestiging toegang verlenen tot gemeenschappelijk gedeelde opslag.
Android 8 Oreo brengt nauwelijks veranderingen mee wat betreft geheugenkaarten. Het nieuwe bestandssysteem SDCardFS heeft, in tegenstelling tot wat de naam doet vermoeden, alleen betrekking op het interne geheugen. Dat moet dan beter gaan presteren. Daarnaast verhelpt het ook het oude probleem dat apps de wijzigingsdatum van bestanden niet kunnen aanpassen.