Мисля, че ръчният цитат е неправилен. Файловете във вътрешната памет не могат да се четат от други приложения, независимо от техния режим. Объркването, което изпитвате, не е необичайно, поради което приложенията трябва да използват FileProvider, за да предлагат файлове на други приложения.
Това е въпрос на сигурност: разрешенията на файловата система не защитават адекватно данните. За да предложите файл на друго приложение чрез разрешения за файлове, трябва да зададете еквивалента на chmod a+r (най-малко). Това дава достъп за четене до всяко друго приложение, което е покана към всеки Том, Дик или Хари да започнат да сърбат вашите файлове. Освен това промяната на достъпа е постоянна, освен ако не си спомните да я промените обратно.
За сравнение, използването на разрешения за URI с FileProvider предлага само временен достъп за четене и само до конкретното приложение, което го е поискало. Можете да настроите приложението си така, че да предоставяте достъп само ако потребителят дойде в приложението ви, за да поиска файла; поне тогава потребителят знае както приложението, което е поискало файла, така и приложението, което го е имало.
person
Joe Malin
schedule
24.09.2013