Java android中位图图像的问题

Java android中位图图像的问题,java,android,Java,Android,我在android应用程序中使用了一些功能来显示一些图像。从服务器读取图像,所有这些工作正常。但我不知道为什么,我的应用程序显示force close,错误是: 尝试调用虚拟方法“int” 空对象引用上的android.graphics.Bitmap.getWidth 这是错误源代码: Bitmap source = BitmapFactory.decodeFile(path); int size = Math.min(source.getWidth(), source.getHei

我在android应用程序中使用了一些功能来显示一些图像。从服务器读取图像,所有这些工作正常。但我不知道为什么,我的应用程序显示force close,错误是:

尝试调用虚拟方法“int” 空对象引用上的android.graphics.Bitmap.getWidth

这是错误源代码:

  Bitmap source = BitmapFactory.decodeFile(path);
    int size = Math.min(source.getWidth(), source.getHeight());
    int x = (source.getWidth() - size) / 2;
    int y = (source.getHeight() - size) / 2;

最后,我使用了默认图像来解决我的问题。我把它放在drawble文件夹中,检查是否显示了未从服务器加载的图像,并且不再显示错误

更新:

以下是我如何使用此方法:

Bitmap source = BitmapFactory.decodeFile(path);
    if (source == null){
        source = BitmapFactory.decodeResource(MainActivity.getContext().getResources(), R.drawable.no_pic_feed);
    }

decodeFile无法加载给定文件时返回null。您的图像文件无效。文件有效。无法解码时,我确定返回null。如果路径不正确,请尝试记录路径值。您正在解码的文件路径是正确的,我是指从根目录到文件的路径,如so/mnt/sdcard0/。。。这就是你的问题所在,我得到路径日志,这是结果:/data/data/com.mypack.name/cache/e714096070f59a72b6b0a82de8a29967