This commit is contained in:
gedoor 2022-01-09 23:00:43 +08:00
parent f0ee3e41ba
commit 6db2f2f390

View File

@ -105,9 +105,11 @@ class FileAssociationActivity :
val bookDoc = DocumentFile.fromSingleUri(this@FileAssociationActivity, uri) val bookDoc = DocumentFile.fromSingleUri(this@FileAssociationActivity, uri)
withContext(IO) { withContext(IO) {
val name = bookDoc?.name!! val name = bookDoc?.name!!
val doc = treeDoc!!.findFile(name) var doc = treeDoc!!.findFile(name)
if (doc != null) { if (doc == null || bookDoc.lastModified() > doc.lastModified()) {
if (bookDoc.lastModified() > doc.lastModified()) { if (doc == null) {
doc = treeDoc.createFile(FileUtils.getMimeType(name), name)!!
}
contentResolver.openOutputStream(doc.uri)!!.use { oStream -> contentResolver.openOutputStream(doc.uri)!!.use { oStream ->
contentResolver.openInputStream(bookDoc.uri)!!.use { iStream -> contentResolver.openInputStream(bookDoc.uri)!!.use { iStream ->
iStream.copyTo(oStream) iStream.copyTo(oStream)
@ -116,16 +118,6 @@ class FileAssociationActivity :
} }
} }
viewModel.importBook(doc.uri) viewModel.importBook(doc.uri)
} else {
val nDoc = treeDoc.createFile(FileUtils.getMimeType(name), name)!!
contentResolver.openOutputStream(nDoc.uri)!!.use { oStream ->
contentResolver.openInputStream(bookDoc.uri)!!.use { iStream ->
iStream.copyTo(oStream)
oStream.flush()
}
}
viewModel.importBook(nDoc.uri)
}
} }
} else { } else {
val treeFile = File(treeUri.path!!) val treeFile = File(treeUri.path!!)