如何从android中png图像的网络url获取图像尺寸
我需要从服务器提供的网络url中获取图像的维度(最好不加载)。这是我试图得到这个的方法如何从android中png图像的网络url获取图像尺寸,android,android-glide,android-bitmap,image-size,Android,Android Glide,Android Bitmap,Image Size,我需要从服务器提供的网络url中获取图像的维度(最好不加载)。这是我试图得到这个的方法 public void getBitmapDimensions(String uri){ try { URL uri1 = new URL(uri); BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true;
public void getBitmapDimensions(String uri){
try {
URL uri1 = new URL(uri);
BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeFile(new File(uri1.toString()).getPath(), options);
int imageHeight = options.outHeight;
int imageWidth = options.outWidth;
Log.d("NewDimens1",imageWidth+","+imageHeight+","+options.inSampleSize);
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
当在浏览器中打开字符串url时,它可以完美地工作。但在这种情况下,imageHeight和imageWidth始终为0
我也尝试过用Uri代替URL。同样的事情。当url基于网络而不是基于文件时,是否需要执行不同的操作
另外,我最初使用Glide库将图像url加载到视图中。我试图改变
Glide.with(this.getContext().getApplicationContext()).load(url).diskCacheStrategy(DiskCacheStrategy.ALL).into(this);
到
Glide.with(this.getContext().getApplicationContext()).load(url)。
diskCacheStrategy(diskCacheStrategy.ALL)。
进入(新SimpleTarget(){
@凌驾
public void onResourceReady(GlideDrawable资源,GlideAnimation
Glide.with(this.getContext().getApplicationContext()).load(url).
diskCacheStrategy(DiskCacheStrategy.ALL).
into(new SimpleTarget<GlideDrawable>() {
@Override
public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> glideAnimation) {
Log.wtf("DimensionsAre",resource.getIntrinsicWidth()+","+resource.getIntrinsicHeight());
}
});