我不知道,为什么我从BitmapFactory.decodeFile(String imagePath)方法获取空值。
imagePath是完美的。代码在下面。

public static byte[] imageToByteArray(String imagePath){
        Bitmap bitmap = BitmapFactory.decodeFile(imagePath);
        ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();

        bitmap.compress(Bitmap.CompressFormat.JPEG , 100 , byteArrayOutputStream);
        return byteArrayOutputStream.toByteArray();
    }


imaagePath是互联网特定的路径。在这里,我使用的是Google Place API,而imagePath是Google Web服务提供的图像的位置。

最佳答案

decodeFile用于从本地文件系统获取Bitmap

Decode a file path into a bitmap. If the specified file name is null, or cannot be decoded into a bitmap, the function returns null.


要从互联网使用获取Bitmap

Bitmap bitmap = BitmapFactory.decodeStream(imageUrl.openConnection().getInputStream());


不要忘记在后台线程的行上方运行。

关于android - 即使图像存在,BitmapFactory.decodeFile(String imagePath)返回null,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13767199/

10-09 13:21