美文网首页
关于BitmapFactory.decodeFileDescri

关于BitmapFactory.decodeFileDescri

作者: 吃惊馆长 | 来源:发表于2016-07-04 21:23 被阅读0次

    开发逗萁上遇到很奇怪的BUG

    public Bitmap decodeSampledBitmapFromFileDescriptor(FileDescriptor fd, int reqWidth, int reqHeight) {
        final BitmapFactory.Options options = new BitmapFactory.Options();
        options.inJustDecodeBounds = true;
        BitmapFactory.decodeFileDescriptor(fd, null, options);
        options.inSampleSize = calculateInSampleSize(options, reqWidth, reqHeight);
        options.inJustDecodeBounds = false;
        return BitmapFactory.decodeFileDescriptor(fd, null, options);
    }
    

    最后返回那一句
    return BitmapFactory.decodeFileDescriptor(fd, null, options);
    配置高的手机上面没有问题,但是配置低的手机如HM NOTE 1LTE上面时常返回null,百思不得其解。(但是真机调试时又是正常的,不知道是不是调试的时候内存没限制)
    最后使用了BitmapFactory.decodeFile解决了

    public Bitmap decodeSampledBitmapFromFile(String path, int reqWidth, int reqHeight) {    
        final BitmapFactory.Options options = new BitmapFactory.Options();    
        options.inJustDecodeBounds = true; 
        BitmapFactory.decodeFile(path, options);   
        options.inSampleSize = calculateInSampleSize(options, reqWidth, reqHeight);   
        options.inJustDecodeBounds = false;    
        return BitmapFactory.decodeFile(path, options);
    }
    

    这样就算在HM NOTE 1LTE这种配置低的机子上也不会返回null

    相关文章

      网友评论

          本文标题:关于BitmapFactory.decodeFileDescri

          本文链接:https://www.haomeiwen.com/subject/pdqhjttx.html