Я создаю приложение, в котором есть кнопка, которая при нажатии запускает загрузку файла.Кнопка на RecyclerView
, и я использую стандартный Android Download Manager.
Я попытался сделать setOnClickListener
для этой кнопки внутри onBindViewHolder
на моем адаптере Recycler View и включить в нее содержимое функции:
holder.button.setOnClickListener {
val request = DownloadManager.Request(Uri.parse(downloadurl))
request.setTitle("$downloadname.apk")
request.setDescription("Download")
request.setVisibleInDownloadsUi(true)
request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS)
request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED)
val manager = getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager
manager.enqueue(request)
}
, но в getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager
говорит мне, что мне нужен Context
, а не String
.
Затем я попытался создать объект, имеющий функцию загрузки, но он выдает мне ту же ошибку, что и функция.
Как я могу заставить это работать на объекте или setOnClickListener
?