在Android下载文件并使用kotlin将其保存下载文件夹

我试图从网络服务器下载apk文件并将其存储在下载文件夹中。 我正在使用feul库

Fuel.download("https://mypath/app.apk").destination { response, url -> val dir = File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).toString()) File(dir, "abcd.apk") }.progress { readBytes, totalBytes -> val progress = readBytes.toFloat() / totalBytes.toFloat() Log.d("log",progress.toString()) }.response { req, res, result -> Log.d("log","download completed ") Log.d("log",Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).toString() + "/abcd.apk") } 

我得到bytesArray作为response但该文件不保存到下载文件夹。 我的Manifest文件上有write_external_storage 。 请让我知道我错过了什么?

正如你在评论中提到你正在使用targetSdkVersion为23.从Android 6.0(API等级23)开始,如果你在你的应用中设置targetSdkVersion为23,你必须在你的应用中实现rumtime权限。

要实现它,请在这里参考官方文档在运行时请求权限