直接上代码复制可用
public class TMNetUrlToBitmapHelper{
public static Bitmap getBitmap(String netUrl,Context context){ URL url = null; try { url = new URL(netUrl); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setConnectTimeout(5000); conn.setRequestMethod("GET"); if (conn.getResponseCode() == 200) { InputStream inputStream = conn.getInputStream(); Bitmap bitmap = BitmapFactory.decodeStream(inputStream); return bitmap; }else { Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.mipmap.ic_launcher); ByteArrayOutputStream baos = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos); return bitmap; } } catch (Exception e) { e.printStackTrace(); Bitmap bitmap = BitmapFactory.decodeResource(context.getResources(), R.mipmap.ic_launcher); ByteArrayOutputStream baos = new ByteArrayOutputStream(); bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos); return bitmap; } }
}
因为需要网络请求,Android SDK高版本是不容许再ui线程进行网络请求的,所有调用的时候需要重新启动一条线程来来执行
Bitmap bitmap; public Bitmap returnBitMap(final String url) { new Thread(new Runnable(){ @Override public void run() { bitmap = TMNetUrlToBitmapHelper.getBitmap(url,getContext()); } }).start(); return bitmap; }
这里获取到的bitmap就是url转换之后的bitmap了
技术源于分享----