@nicolette.stoltenberg
В Kotlin для проверки наличия изображения по ссылке можно воспользоваться следующим кодом:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
import java.net.URL import java.net.HttpURLConnection fun isImageExists(imageUrl: String): Boolean { try { val url = URL(imageUrl) val connection = url.openConnection() as HttpURLConnection connection.requestMethod = "HEAD" return (connection.responseCode == HttpURLConnection.HTTP_OK && connection.contentType.startsWith("image/")) } catch (e: Exception) { return false } } |
Эта функция принимает ссылку на изображение в виде строки и возвращает true, если по этой ссылке находится изображение, и false в противном случае.
Внутри функции создается объект класса URL, который представляет собой URL-адрес изображения. Затем создается объект HttpURLConnection, который представляет соединение с сервером, на котором находится изображение.
Далее устанавливается метод запроса HEAD, который получает только заголовки ответа, без тела. Это позволяет быстро проверить наличие изображения без необходимости загружать его полностью.
После этого функция проверяет код ответа сервера. Если код равен HttpURLConnection.HTTP_OK (200), то изображение существует. Также проверяется тип содержимого ответа, чтобы убедиться, что это действительно изображение.
Если при выполнении какого-либо из этих шагов происходит исключение, функция возвращает false.