Я пытаюсь загрузить изображения из существующего API, проблема заключается в том, что ответ изображения API REST Response приходит в виде зашифрованного байтового массива и не может быть прочитан, если не расшифрован перед загрузкой в imageView.
Процесс выглядит следующим образом: LoadImage (id) -> OutputByteArray -> DecryptAES () -> DecryptedByteArray -> назначить расшифрованный bytearray / bitmap для imageView.
Я пытался искать учебники и примеры в Kotlin, чтобы сделать этот шаг, но не смогли найти соответствующие источники (я знаю о ModelLoaders и DataRetrievers, но я не мог понять, как я мог бы добавить этот простой шаг шага расшифровки через Glide
I с нетерпением ждем вашей поддержки.
Использование:
// RecyclerViewListItem.kt
val glideUrl = GlideUrl("API_URL") { mapOf(Pair("Authorization", "Bearer $testToken")) }
Glide.with(this.containerView).load(glideUrl).signature(ObjectKey(imageID))
.transition(DrawableTransitionOptions.withCrossFade()).thumbnail(0.25f)
.apply(RequestOptions().diskCacheStrategy(DiskCacheStrategy.AUTOMATIC).skipMemoryCache(true).override(selfReference.snapshotImage.width, selfReference.snapshotImage.height)
.placeholder(R.drawable.empty_result)
).into(this.itemView.snapshotImage)
// before loading to imageView I need the following to be done with the API Call response:
// val decryptedByteArray = CryptoCbc.decryptAesCBC(byteArrayFromResponse, sharedSecret)