У меня в приложении для Android есть Webview, который работает нормально. Я использую этот код для установки файлов cookie для обработки моих сеансов
Моя загрузка Listener
val cookieManager = CookieManager.getInstance()
cookieManager.setAcceptCookie(true)
cookieManager.acceptCookie()
CookieManager.setAcceptFileSchemeCookies(true)
CookieManager.getInstance().setAcceptCookie(true)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
CookieManager.getInstance().setAcceptThirdPartyCookies(webView)
}
Но когда я загружаю файл из веб-просмотра, он автоматически выходит из системы.
val request = DownloadManager.Request(Uri.parse(url))
request.setMimeType(mimeType)
//cookie
val cookie = CookieManager.getInstance().getCookie(url)
Log.e("HELLO", "Cookie: $cookie ")
//Add cookie and User-Agent to request
request.addRequestHeader("Cookie", cookie)
request.addRequestHeader("User-Agent", userAgent)
request.setDescription("Downloading File...")
request.setTitle(filename)
request.allowScanningByMediaScanner()
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
request.setDestinationInExternalPublicDir(
Environment.DIRECTORY_DOWNLOADS,
filename
)
val dm = getSystemService(DOWNLOAD_SERVICE) as DownloadManager
dm.enqueue(request)