Logo nl.androidermagazine.com
Logo nl.androidermagazine.com

Wat is Scoped-opslag in Android Q?

Inhoudsopgave:

Anonim

Privacy en beveiliging zullen een belangrijk aandachtspunt worden van Android Q. Dat is een goede zaak voor elke gebruiker, vooral wanneer voor veel van de wijzigingen geen actie van onze kant nodig is. Beveiligingsexperts die zich zorgen maken over de beveiliging op onze telefoons, zorgen ervoor dat we ze gewoon kunnen blijven gebruiken en iedereen wint, behalve een potentiële hacker of oplichter. Maar een belangrijke verandering in een fundamentele functie van Android - het delen van uw bestanden tussen elke app - krijgt een grote verandering die zal leiden tot veel backlash van app-ontwikkelaars: Scoped Storage.

Hoe Scoped Storage werkt

Ooit werkte Android als elk ander desktopbesturingssysteem als het ging om toegang tot uw bestanden; dingen zoals documenten, foto's, muziek of iets anders dat u op uw apparaat wilde opslaan, was beschikbaar voor elke andere app. Je zei dat het OK was voor een app om dit te doen toen je het installeerde, en dat deed het gewoon. Met de native gebruikersinterface van de app kunt u door het bestandssysteem bladeren en al uw openbare bestanden bekijken.

Met Android 4.4 KitKat begon Google wijzigingen aan te brengen in en beperkingen toe te voegen over hoe een app toegang kon krijgen tot bestanden die het niet bezat, en met Android 5.1 werd het Storage Access Framework geïmplementeerd. Dit gaf apps een manier om toegang te krijgen tot bestanden in andere mappen met behulp van een Android API in plaats van met standaard programmeerbestandsbewerkingen. Het werkt. Het is traag en redelijk onpopulair, maar het is beschikbaar en inmiddels heeft bijna elke ontwikkelaar van een app die dit soort wereldwijde toegang nodig heeft, het op zijn minst uitgeprobeerd om te zien hoe geschikt het is of niet op basis van hun behoeften.

Met Scoped Storage van Android Q zijn dingen tegelijkertijd restrictiever en eenvoudiger. Een compatibele app krijgt een eigen map voor gebruikersgerichte gegevens. Apps hebben al een persoonlijke sandbox-map voor opslag van hun vereiste bestanden en deze is niet beschikbaar voor andere apps. Scoped Storage biedt de mogelijkheid om een ​​tweede map te maken voor bestanden die de app maakt, omdat we deze hebben gebruikt en gezegd dat ze moeten worden gemaakt. Denk bijvoorbeeld aan een app zoals een voicerecorder; het moet ergens de audiobestanden opslaan die het maakt.

De app heeft geen toestemming nodig om een ​​bestand in deze map te lezen of te schrijven, dus u wordt niet gevraagd om machtigingen te verlenen wanneer u het voor het eerst uitvoert met betrekking tot lees- en schrijflocaties van bestanden. Apps hebben ook toestemming nodig voor elke map waartoe ze toegang willen hebben, maar die ze niet bezitten.

Sinds Lollipop zijn ontwikkelaars geprepareerd om specifieke methoden voor bestandstoegang te gebruiken, maar ze zijn erg onpopulair.

"Gedeelde" mappen zoals muziek of afbeeldingen hebben een ingebouwde methode om toegang te krijgen (voorlopig - dit kan tijdelijk zijn terwijl Android Q in bèta is) maar elke andere map op de externe opslag, dit is uw gratis interne opslag en uw SD kaart als u er een heeft, heeft nu specifieke toestemming nodig om toegang te krijgen. Denk nu aan een app zoals een bestandsbeheerder en hoe deze toegang moet hebben tot elke map op uw SD-kaart en interne opslag.

Ontwikkelaars die toegang moeten hebben tot mappen die geen eigendom zijn van hun app, moeten de Storage Access Framework API's gebruiken. Dat betekent dat het de API moet doorzoeken om te zien of de bestanden bestaan ​​en de apparaatlocatie krijgt en vervolgens de gebruiker om toestemming vraagt ​​om deze te gebruiken. Dit is de aanbevolen best practice voor toegang tot bestanden sinds Android Lollipop, dus het is niet bepaald nieuw. Maar met Android Q is het nu strikt gehandhaafd en niet langer "optioneel".

Waarom deze wijziging aanbrengen?

Google geeft twee geldige redenen waarom het deze wijziging aanbrengt: Beveiliging en om overbodige "app-rommel" te verminderen.

Op het gebied van beveiliging doet deze verandering een paar dingen. Eerst en vooral stopt het kwaadwillende apps die afhankelijk zijn van het verlenen van toegang tot gevoelige gegevens omdat u niet hebt gelezen wat u in het dialoogvenster hebt gezien en op Ja hebt geklikt. Dit gebeurt vaak genoeg dat het moest worden aangepakt, alleen al om de daders te beschermen. En we hebben het allemaal gedaan.

Het stelt een ontwikkelaar ook in staat om bij het eerste gebruik zijn eigen ruimte op de opslag van uw apparaat te hebben die privé is zonder om specifieke rechten te vragen (zie de eerste reden opnieuw). En geen enkele andere app heeft toegang tot elk document dat hij maakt zonder dat u zegt dat het kan.

De reden voor een verandering is goed, maar de verandering zelf wordt niet goed ontvangen.

Het verminderen van app-rommel behoeft weinig uitleg. Wanneer u een app verwijdert, blijven de bestanden en mappen in uw apparaatopslag achter zodra u toestemming hebt gegeven om dit te doen. Genoeg van deze restjes kunnen de prestaties beïnvloeden, vooral als de bestanden een gemeenschappelijke naam gebruiken die door een andere app kan worden herhaald. Als een ontwikkelaar een app bouwt die media maakt, zoals een camera-app of muziekrecorder, kan hij of zij de standaardlocaties van de mediamappen gebruiken om de dingen die u maakt te deponeren, zodat ze niet worden verwijderd als de app wordt verwijderd.

Niet in steen geschreven

Android Q is nog in bèta; dat betekent dat ontwikkelaars worden aangemoedigd om het te installeren en feedback te geven. Op dit moment is de feedback voor Scoped Storage niet erg goed. Er is zelfs een petitie die Google vraagt ​​om de functie voorlopig te verwijderen en de implementatie ervan te heroverwegen.

Ontwikkelaars delen hun frustraties met behulp van officiële feedbackkanalen, en hoewel Google soms het gevoel heeft dat het een onbeweeglijk object is, luistert het. Boven alles is Android een applicatieplatform en het breken van populaire apps is niet iets wat de ontwikkelaars willen doen.

Dingen kunnen veranderen voordat Android Q definitief wordt als het gaat om Scoped Storage. Of het kan helemaal worden verwijderd. We zullen weten wanneer we het in de herfst van 2019 zien.

Android Q: Alles wat u moet weten!