Съдържание:
Поверителността и сигурността ще бъдат основен фокус на Android Q. Това е добро нещо за всеки потребител, особено когато много от промените изискват да не се предприемат действия от наша страна. Експертите по сигурността, които се притесняват за сигурността на нашите телефони, означават, че можем да продължим да ги използваме както обикновено и всички печелят, с изключение на потенциален хакер или измамник. Но една съществена промяна на основна характеристика на Android - споделянето на вашите файлове между всяко приложение - получава голяма промяна, която ще доведе до изобилие от реакция на програмисти: Scoped Storage.
Как работи Scoped Storage
Едно време Android работеше като всяка друга настолна операционна система, когато стана дума за достъп до вашите файлове; неща като документи, снимки, музика или нещо друго, което искате да съхраните на устройството си, беше там, за да може да се отвори всяко друго приложение. Казахте, че е добре дадено приложение да направи това, когато го инсталирате, и то просто стана. Използвайки родния потребителски интерфейс на приложението, можете да прегледате файловата система и да видите всички ваши обществени файлове.
С Android 4.4 KitKat Google започна да прави промени и да добавя ограничения за това как едно приложение може да има достъп до файлове, които не притежава, а с Android 5.1 беше приложена рамката за достъп до съхранение. Това даде на приложенията достъп до файлове в други папки с помощта на Android API, вместо да използват стандартни операции с програмиране на файлове. Работи. Това е бавно и доста непопулярно, но е достъпно и досега почти всеки разработчик на приложение, което се нуждае от този вид глобален достъп, поне го е изпробвал, за да види доколко е подходящ или не въз основа на техните нужди.
С Scoped Storage на Android Q нещата са едновременно по-ограничителни и по-лесни. Съвместимото приложение получава своя собствена папка за данни, насочени към потребителя. Приложенията вече имат частна папка с пясъчна кутия за съхранение на необходимите им файлове и това не е достъпно за всяко друго приложение. Scoped Storage дава възможност за създаване на втора папка за файлове, които приложението създава, защото ние го използвахме и му казахме да ги създадем. Помислете например за приложение като диктофон; трябва някъде да съхранява аудио файловете, които създава.
Приложението не се нуждае от разрешение за четене или запис на който и да е файл в тази папка, така че няма да бъдете подканени да дадете разрешения при първото му стартиране относно местоположенията за четене и запис на файлове. Приложенията също се нуждаят от разрешение за всяка папка, до която искат достъп, но не притежават.
Разработчиците се грижат да използват специфични методи за достъп до файлове от Lollipop, но те са много непопулярни.
„Споделени“ папки като Музика или Картини имат вграден метод за получаване на достъп (засега - това може да е временно, докато Android Q е в бета версия), но всяка друга папка на външното хранилище, което е вашето безплатно вътрешно хранилище и вашата SD карта, ако имате такава, сега се нуждаете от конкретно разрешение за достъп. Сега помислете за приложение като файлов мениджър и как трябва да има достъп до всяка папка на вашата SD карта и вътрешна памет.
Разработчиците, които трябва да имат достъп до папки, които не са собственост на приложението им, ще трябва да използват API на Storage Access Framework API. Това означава, че трябва да потърси API, за да провери дали файловете съществуват и да получи местоположението на устройството му, след което да поиска от потребителя разрешение да го използва. Това е препоръчителната най-добра практика за достъп до файлове след Android Lollipop, така че не е съвсем нова. Но с Android Q той вече е строго наложен и вече не е „незадължителен“.
Защо да направите тази промяна?
Google дава две валидни причини, поради които прави тази промяна: Сигурност и намаляване на остатъците от „затруднения в приложението“.
На защитния фронт тази промяна прави няколко неща. На първо място, той спира злонамерените приложения, които зависят от вас, предоставяйки достъп до чувствителни данни, защото не сте чели това, което сте видели в диалоговия прозорец и просто щракнахте да. Това се случва достатъчно често, че трябва да се обърне внимание, само за да защити нарушителите. И всички сме го направили.
Освен това позволява на програмист да разполага със собствено пространство за частно съхранение на вашето устройство, без да иска конкретни разрешения (вижте първата причина отново) при първото изпълнение. И никое друго приложение няма достъп до всеки създаден от него документ, без да казвате, че може.
Причината за промяна е добра, но самата промяна не е добре приета.
Намаляването на струпването на приложенията се нуждае от малко обяснение. Когато деинсталирате приложение, файловете и папките, които той изпада във всички хранилища на вашето устройство, след като му дадете разрешение да стоят по-назад. Достатъчното от тези остатъци могат да започнат да влияят на производителността, особено ако файловете използват общо име, което може да се повтори от друго приложение. Ако разработчик създаде приложение, което създава медии като приложение за камера или музикален рекордер, например, той или тя могат да използват стандартните местоположения в папката на медиите, за да депозират създадените от вас неща, така че те да не бъдат премахнати, ако приложението е деинсталирано.
Не е написано на камък
Android Q все още е в бета версия; това означава, че разработчиците се насърчават да го инсталират и да предоставят обратна връзка. В момента отзивите за Scoped Storage не са много добри. Има дори петиция, която моли Google да премахне функцията за сега и да преосмисли нейното прилагане.
Разработчиците споделят фрустрациите си, използвайки официални канали за обратна връзка, и докато Google понякога може да се чувства като неподвижен обект, той слуша. Преди всичко Android е платформа за приложения и разбиването на популярни приложения не е нещо, което разработчиците искат да правят.
Нещата могат да се променят, преди Android Q да стане окончателен, когато става въпрос за Scoped Storage. Или може да бъде премахнат напълно. Ще разберем, когато го видим през есента на 2019 година.
Android Q: Всичко, което трябва да знаете!