Просмотр исходного кода

Merge remote-tracking branch 'origin/master'

kunfei 3 лет назад
Родитель
Сommit
e13dcb5bbe
1 измененных файлов с 8 добавлено и 1 удалено
  1. 8 1
      app/src/main/java/io/legado/app/utils/FileDocExtensions.kt

+ 8 - 1
app/src/main/java/io/legado/app/utils/FileDocExtensions.kt

@@ -39,7 +39,14 @@ data class FileDoc(
     fun asDocumentFile(): DocumentFile? {
     fun asDocumentFile(): DocumentFile? {
         if (isContentScheme) {
         if (isContentScheme) {
             return if (isDir) {
             return if (isDir) {
-                DocumentFile.fromTreeUri(appCtx, uri)
+                Class.forName("androidx.documentfile.provider.TreeDocumentFile")
+                    .getDeclaredConstructor(
+                        DocumentFile::class.java,
+                        Context::class.java,
+                        Uri::class.java
+                    ).apply {
+                        isAccessible = true
+                    }.newInstance(null, appCtx, uri) as DocumentFile
             } else {
             } else {
                 DocumentFile.fromSingleUri(appCtx, uri)
                 DocumentFile.fromSingleUri(appCtx, uri)
             }
             }