我想用下面的一个函数把googleapis地图的图像转换成位图。如果输入url地址,在浏览器中可以看到一个图像。
我正在使用withContext(Dispatchers.IO)来运行该函数,以允许connection.connect()在后台运行。
该函数是从主作用域调用的。 connection.connect()并没有抛出任何错误。 InputStream似乎是空的,所以没有东西可以被BitmapFactory解码。
我怎样才能修复这个代码?
private suspend fun convertToBitmap(venueId: String, location: LatLng, newVenue: Boolean): Bitmap {
return withContext(Dispatchers.IO){
val gsmUrl: String? = getStaticMapUrl(venueId, location, newVenue)
val url = URL(gsmUrl)
val connection: HttpURLConnection = url.openConnection() as HttpURLConnection
connection.doInput = true
try {
connection.connect()
}catch (e: java.lang.Exception){
Timber.e(e)
val input: InputStream = connection.inputStream
val bm: Bitmap = BitmapFactory.decodeStream(input)