Det är en regelbunden händelse i teknisk press. En app har ifrågasatta behörigheter och folk lurar om den. Ibland är det berättigat, men för det mesta beror det på att de människor som frikar inte förstår Android-tillåtningsmodellen eller inte har tagit sig tid att se vilka skäl en app kan behöva för de till synes skissartade behörigheterna. Och det är Googles fel. Tyvärr, Google, vi älskar dig, men det är allt ditt.
Det finns två sätt att hantera att låta användaren (det är du och jag) veta vad en app behöver göra eller måste se för att fungera. Ett sätt är att helt enkelt redogöra för allt innan användaren installerar det så att de vet exakt vad som kan göras och ses. Med andra ord Android-sättet (mest). Ett annat sätt är att noggrant screena varje app och låta användaren lita på din screeningprocess och veta att appen inte gör något ovanligt. Det här är Apple-sättet. Båda är bra på vissa sätt och dåliga på vissa sätt.
Det är lugn och besättnings jobb på iMore att ta itu med iOS-problem på den här fronten om det behöver hanteras - de är mer kunniga om dem än jag är - men vi måste verkligen prata om Android-behörigheter här och varför de behöver lite uppmärksamhet från stora G.
Jag ska välja på vår egen Android Central-app här eftersom jag kan titta igenom koden eller bygga den själv och vet exakt vad den gör, vad den kan göra och varför. Låt oss börja med vad som gör att folk blir lurar eftersom det finns ett bra exempel rätt på bilden ovan - förhindra att enheten sover.
Varför i helvete behöver en app för att läsa en blogg för att hålla telefonen låst vaken? Jag klandrar dig inte alls om det här är det första du tror. Jag vill faktiskt att det ska vara det första som alla tycker eftersom vi alla måste vara lite skeptiska när det gäller programvara som vi installerar på våra telefoner. Men vår app har ingen avsikt att hålla telefonen igång hela tiden, och såvida det inte finns något fel någonstans gör det inte det. Vi behöver den behörigheten så att skärmen inte stängs av medan du läser detta.
Berätta vad dessa behörigheter innebär, och vi kommer att bli mindre besvikna.
Det finns två mycket stora problem här som Google kan fixa. Det ena är svårt men det andra är lätt, som läcker paj lätt. Det svåra är att fortsätta bygga ut API: er tills vi har en som bara kan hålla skärmen på. Låt bakgrundsdata och allt annat sova tills den används och behåll CPU-enheten på tomgång såvida den inte behöver rampas upp för något annat en användare gör. Det är allt vi använder för att förhindra enheten från att sova tillåtelse för ändå. Om Google gör det API kommer vi att byta till det. Fram till dess behöver vi tillstånd att hålla hela telefonen igång även om vi inte gör något i bakgrunden.
Det andra och lättare som måste göras är att ge mer information här. När du väl bestämt att du ska ge användaren all information om vilka behörigheter en app behöver, måste du gå ett steg längre när du listar dem. Det vi har just nu är antingen för mycket information eller inte tillräckligt med information.
Jag är en nörd. Jag försöker inte ens dölja det. Många av de som läser detta kommer också att vara nördar. Det vi ser nu på Google Play när behörigheter visas skrivs av nördar för nördar. Jag förstår det, mina kolleger nördar förstår det, men en vanlig person som bara vill installera en cool ny app kanske inte. Tänk på detta:
- Förhindra att din enhet sover. Den här applikationen måste förhindra att din telefon går i viloläge. Detta kan bara hända medan appen körs och visas på skärmen och kanske inte är processorintensiv. Om du har några frågor bör du ställa utvecklaren med hjälp av kontaktinformationen längst ner på sidan.
Det tog mig som 30 sekunder att slå ut på mitt tangentbord. (Och 20 till för att fixa skrivfilerna eftersom jag tror att jag kan skriva riktigt snabbt utan att titta på mitt tangentbord men jag kan faktiskt inte.) Det är inte den största förklaringen på vad detta tillstånd kan betyda, men det är en metrisk skitbelastning bättre än vad vi har nu. Människorna på Google är väldigt smartare med Android än jag är (men jag utmanar alla som kommer att testa min kunskap om Dunmer lore) och skulle kunna göra det ännu bättre. Om de gjorde det skulle det hjälpa människor som faktiskt bryr sig om att läsa behörigheterna när de ser Twitter smälta om en app som behöver GPS-data eftersom det är en gratis annonsdriven app som behöver GPS för att visa dig de "relevanta" målannonserna när du är på parkeringsplatsen.
Tillståndsmodellen för Android måste förfinas och förklaras. Och inte av nördar.
Detta är inte ett nytt problem. Sedan Android blev populärt har människor sett för mycket information om nödvändiga behörigheter utan tillräckligt med information om dessa behörigheter och vad de menar. Sedan lurar de (med rätta) om det. Jag tycker om dessa freakouts. Jag får luta mig tillbaka och titta på att människor faktiskt bryr sig om mobilsäkerhet och deras värdefulla personuppgifter för en dag eller två. Men apputvecklarna är säkert inte så nöjda när det händer med dem, och de är anledningen till att Android är lika populärt som det är.
Så hur är det Google? Kan du göra en förändring för att ge oss allt vi behöver veta när vi faktiskt tittar på en apps behörigheter utan att gå till Android Developer-webbplatsen och läsa en massa dokumentation om dem? Vi kommer att älska dig mer.