Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android:Bitmap.createBitmap带有OutOfMemoryException-一个Bug?_Java_Android_Exception_Memory_Bitmap - Fatal编程技术网

Java Android:Bitmap.createBitmap带有OutOfMemoryException-一个Bug?

Java Android:Bitmap.createBitmap带有OutOfMemoryException-一个Bug?,java,android,exception,memory,bitmap,Java,Android,Exception,Memory,Bitmap,我知道这个主题写了很多,但我找不到这个主题的解决方案 我有一个高清大小的位图,想旋转它。但是如果我使用Bitmap.createBitmap(具有相同的分辨率)创建一个新位图,我会得到一个OutOfMemoryException。在这一点上,我只有一个位图在我的应用程序中使用! 如果我搜索这个问题,我会用“call recycle()”或“set Options”找到解决方案,但所有这些都不起作用。第二个问题是可用内存非常大。我记录了可用内存的大小,得到451MB。这是我以高清分辨率创建新位图之

我知道这个主题写了很多,但我找不到这个主题的解决方案

我有一个高清大小的位图,想旋转它。但是如果我使用Bitmap.createBitmap(具有相同的分辨率)创建一个新位图,我会得到一个OutOfMemoryException。在这一点上,我只有一个位图在我的应用程序中使用! 如果我搜索这个问题,我会用“call recycle()”或“set Options”找到解决方案,但所有这些都不起作用。第二个问题是可用内存非常大。我记录了可用内存的大小,得到451MB。这是我以高清分辨率创建新位图之前的最后一次调用。我相信目前我的应用程序使用了大约30MB的内存

因此,我的问题是:Bitmap.createBitmap方法中是否存在错误?如果是这样的话,工作重点是什么


感谢您的帮助。

Android应用程序无法占用设备的所有可用内存,一个应用程序对所有设备都有限制,并且在不同设备之间有所不同。应用程序必须确保Android指定的只有16MB。因此,如果您已经拍摄了30MB,并且需要创建高清位图,那么您的应用程序中将没有足够的空间分配。请您提供更多详细信息,例如图片大小(字节和分辨率)、屏幕分辨率,当然还有您的源代码。您是一次呼叫创建和轮换,还是单独创建和轮换?