С Scoped Storage, представленной в Android Q, как мне разработать приложение для управления файлами? - PullRequest
0 голосов
/ 10 мая 2019

Android Q представит новую изолированную файловую систему для приложений, Scoped Storage.Эта политика будет применена ко всем приложениям с таргетингом на API> = 29.Как стороннему файловому диспетчеру преодолеть это ограничение и продолжать работать должным образом?

Этот вопрос должен быть общим для любых приложений, которые имеют некоторые функции управления файлами, такие как просмотр, сохранение, загрузка,синхронизация и т. д.

1 Ответ

1 голос
/ 13 мая 2019

Я считаю, что ваш вопрос эквивалентен: Как приложение может получить доступ к основной памяти телефона (обычно /sdcard)?

Ответ таков: попросите пользователя получить доступ ко всему /sdcard с помощью действия ACTION_OPEN_DOCUMENT_TREE.Таким образом, ваше приложение может получить доступ к /sdcard и всем его подкаталогам.

Из https://developer.android.com/preview/privacy/scoped-storage#manage-groups-of-files:

Приложения для управления файлами и создания мультимедиа обычно управляют группами файлов виерархия каталогов.Эти приложения могут вызывать намерение ACTION_OPEN_DOCUMENT_TREE, чтобы позволить пользователю предоставить доступ ко всему дереву каталогов.Такое приложение сможет редактировать любой файл в выбранном каталоге, а также любые его подкаталоги.

Используя этот интерфейс, пользователи могут получать доступ к файлам из любого установленного экземпляра DocumentsProvider, который любой локальноПоддерживается решение на основе облачных или облачных вычислений.

На Github также есть пример проекта, показывающий, как это делается: https://github.com/android/storage/tree/228c8e0aa19586bfcf36318ddb191719537a45a4/ActionOpenDocumentTree

Вот что сейчас делает "Files by Google"на бета-версии Android Q: https://www.androidpolice.com/2019/04/08/scoped-storage-in-android-q-beta-2-limits-how-apps-can-access-files/#1

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...