Я пытаюсь реализовать ContentObserver
на платформе Storage Access Framework, предоставляемой Uri
, но наблюдатель никогда не уведомляется о каких-либо изменениях.
Пример Uri
Я пытаюсь наблюдать is: content://com.android.externalstorage.documents/tree/primary%3AMusic/document/primary%3AMusic
Приложение ранее получило READ_URI_PERMISSION
через takePersistableUriPermission
.
Я пытался использовать Uri
, возвращаемый из DocumentsContract.buildChildDocumentsUriUsingTree
(который разрешается до /tree/primary:Music/document/primary:Music/children
).
Я также пытался DocumentFile.fromTreeUri(context, uri)
(который разрешается до /tree/primary:Music/document/primary:Music
).
Я тестировал добавление и удаление файлов непосредственно в этот каталог Music
через adb и использование файлов. приложение на устройстве, но обратные вызовы ContentObserver
onChange()
никогда не вызываются.
Я заметил, что при регистрации того же ContentObserver
против MediaStore.Audio.Media.EXTERNAL_CONTENT_URI
я получаю уведомления об изменениях - так что нет Кажется, это проблема с реализацией ContentObserver
. К сожалению, некоторые из каталогов, которые я хотел бы наблюдать, не отслеживаются в MediaStore
.