Я пытаюсь загрузить простой файл PDF, используя URL-адрес, сгенерированный в Amazon Cloudfront с помощью внутреннего интерфейса.
URL-адрес указан в следующем шаблоне: https://ds3dy60rh.cloudfront.net/B4CS/REPORT/26/report.pdf?Expires=1586542658&Signature=XXXX
Я уже пробовал эти способы загрузки:
Диспетчер загрузки
try {
val request = DownloadManager.Request(Uri.parse(url))
.setTitle(titleDownloadReport)
.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED)
.setDestinationUri(uriReport)
.setRequiresCharging(false)
.setAllowedOverMetered(true)
.setAllowedOverRoaming(true)
val downloadManager = getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager
downloadManager.enqueue(request)
}catch (e: Exception){
e.printStackTrace()
}
Не работает, я получаю уведомление о том, что загрузка не удалась!
И этот:
doAsync {
try {
URL(url).openStream().use { input ->
FileOutputStream(File(path)).use { output ->
input.copyTo(output)
}
}
} catch (e: Exception) {
}
}
Также не работает, запускается исключение FileNotFoundException.
Дело в том, что если я скопирую тот же URL-адрес и вставлю его в Chrome или Firefox, он начнет загружаться мгновенно!
Чем эти браузерные приложения отличаются от моего приложения?