Загрузить изображение с помощью Coil Android Kotlin

#android #kotlin

#Android #kotlin

Вопрос:

Почему я не могу загрузить изображение с URL, я уже использую зависимость coil

 implementation "io.coil-kt:coil:0.11.0"
  

а затем добавьте разрешение доступа в Интернет в манифест, подобный этому

 <uses-permission android:name="android.permission.INTERNET" />
  

но когда я делаю что-то подобное, изображение не отображается

 holder.musicImage.load("https://images.unsplash.com/photo-1494548162494-384bba4ab999?ixlib=rb-1.2.1amp;w=1000amp;q=80")
  

но, если я загружаю его из локального или извлекаемого, оно загружается без проблем

 holder.musicImage.load(R.drawable.ic_baseline_account_box_24)
  

В чем проблема? Кто-нибудь может помочь? Я использую coil для библиотеки.

Ответ №1:

вы получаете какую-либо ошибку?

Я предлагаю использовать Picasso, потому что он более мощный, чем этот

в любом случае я использую этот код, который работает

 val imageView:ImageView = findViewById(R.id.image_view)

imageView!!.load("https://upload.wikimedia.org/wikipedia/commons/thumb/7/74/Kotlin-logo.svg/1024px-Kotlin-logo.svg.png")
  

но есть кое-что, на что вам следует обратить внимание

1- в приложении/build.gradle

 android {
   ...
   compileOptions {
       sourceCompatibility JavaVersion.VERSION_1_8
       targetCompatibility JavaVersion.VERSION_1_8
   }

   kotlinOptions {
       jvmTarget = JavaVersion.VERSION_1_8.toString()
   }
}
  

2-
вы должны добавить библиотеку com.squareup.okhttp3:okhttp:3.12.11 для работы с coil
потому что coil использует okhttp для работы

итак, сделайте это

 dependencies {

    ...

    implementation 'com.squareup.okhttp3:okhttp:3.12.11'
}
  

Я сделал их, и это работает хорошо

Комментарии:

1. я исправляю, просто стираю данные с моего эмулятора и повторно запускаю, возможно, мой проект поврежден или имеет то же имя с другим проектом, в любом случае спасибо за помощь