Using Facebook's Fresco to load a bitmap

后端 未结 5 1041
自闭症患者
自闭症患者 2020-12-06 01:59

I\'m trying to replace Picasso in my android app with Fresco. However I am unsure of how to simply load a bitmap using Fresco.

With Picasso I would just do the foll

5条回答
  •  半阙折子戏
    2020-12-06 02:23

    I found this solution using Kotlin's coroutines:

    suspend fun getBitmapFromUri(imageUri: Uri): Bitmap = withContext(Dispatchers.Default) {
        val imageRequest = ImageRequestBuilder.newBuilderWithSource(imageUri).build()
        val dataSource = Fresco.getImagePipeline().fetchDecodedImage(imageRequest, this)
        val result = DataSources.waitForFinalResult(dataSource) as CloseableReference
    
        val bitmap = result.get().underlyingBitmap
    
        CloseableReference.closeSafely(result)
        dataSource.close()
    
        return@withContext bitmap
    }
    

提交回复
热议问题