如何使Kotlin中的MediaScannerConnection起作用

时间:2019-01-16 14:50:38

标签: android kotlin android-mediascanner

我写了一些代码将SQLite数据库保存到.csv文件中。我在计算机上需要该文件,但是当我将手机连接到计算机时,该文件直到重新启动后才会显示。 我读到文件需要在显示之前进行扫描,因此我尝试使MediaScannerConnection正常工作,但我没有使它扫描文件。

创建的文件: val myExternalFile = File(getExternalFilesDir(null), "docname.csv")

扫描仪: MediaScannerConnection(this, null).scanFile(myExternalFile.absolutePath, null)

保存文件的结构如下:

var myExternalFile = File(getExternalFilesDir(null), "docname.csv")
try {
    val fileOutPutStream = FileOutputStream(myExternalFile)
    fileOutPutStream.write(fileContent.toByteArray())
    fileOutPutStream.flush()
    fileOutPutStream.close()
    MediaScannerConnection(this, null).scanFile(myExternalFile.absolutePath, null)
    Toast.makeText(this, "Saved", Toast.LENGTH_LONG).show()
} catch (e: IOException) {
    Toast.makeText(this, "Error", Toast.LENGTH_LONG).show()
    e.printStackTrace()
}

我也不确定为函数传递的参数,但是也许有人有想法? 我是编程的初学者,所以很高兴收到任何反馈。

0 个答案:

没有答案