Skip to content

Instantly share code, notes, and snippets.

@umpteenthdev
umpteenthdev / BlurTransformation.kt
Created January 21, 2019 09:08
Glide blur transformation
import android.content.Context
import android.graphics.Bitmap
import android.renderscript.Allocation
import android.renderscript.Element
import android.renderscript.RenderScript
import android.renderscript.ScriptIntrinsicBlur
import com.bumptech.glide.load.Key
import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool
import com.bumptech.glide.load.resource.bitmap.BitmapTransformation
import java.security.MessageDigest
@umpteenthdev
umpteenthdev / FileInfoDetector.kt
Created January 21, 2019 06:28
How to get MimeType and file extension from byte array on Android
import android.webkit.MimeTypeMap
import java.net.URLConnection
fun getFileInfo(bytes: ByteArray): Pair<String?, String?> {
val mime = URLConnection.guessContentTypeFromStream(bytes.inputStream())
val extension = MimeTypeMap.getSingleton().getExtensionFromMimeType(mime)
return mime to extension
}
@umpteenthdev
umpteenthdev / SendMultipart.kt
Last active July 17, 2025 18:01
Ktor Client. How to send byteArray using multipart/form data
import io.ktor.client.HttpClient
import io.ktor.client.call.call
import io.ktor.client.engine.okhttp.OkHttp
import io.ktor.client.request.forms.MultiPartFormDataContent
import io.ktor.client.request.forms.formData
import io.ktor.client.request.url
import io.ktor.http.Headers
import io.ktor.http.HttpHeaders
import io.ktor.http.HttpMethod
import kotlinx.coroutines.GlobalScope