我在我的Android应用程序中使用相机,并且我将手机设置为纵向模式(cameraView处于横向状态,这是第一件奇怪的事情)当我将手机转为横向模式时,我会收到错误。< / p>
VM won't let us allocate ... bytes
显示的错误行是
setContentView(R.layout.gameactivity);
这篇文章很有意思Caused by: java.lang.OutOfMemoryError: bitmap size exceeds VM budget 但我在我的活动中没有使用位图,所以我不知道为什么我会得到关于位图的错误
02-01 10:07:30.301: E/AndroidRuntime(5715): Caused by: java.lang.OutOfMemoryError: bitmap size exceeds VM budget
02-01 10:07:30.301: E/AndroidRuntime(5715): at android.graphics.BitmapFactory.nativeDecodeAsset(Native Method)
02-01 10:07:30.301: E/AndroidRuntime(5715): at android.graphics.BitmapFactory.decodeStream(BitmapFactory.java:460)
02-01 10:07:30.301: E/AndroidRuntime(5715): at android.graphics.BitmapFactory.decodeResourceStream(BitmapFactory.java:336)
02-01 10:07:30.301: E/AndroidRuntime(5715): at android.graphics.drawable.Drawable.createFromResourceStream(Drawable.java:697)
02-01 10:07:30.301: E/AndroidRuntime(5715): at android.content.res.Resources.loadDrawable(Resources.java:1709)
02-01 10:07:30.301: E/AndroidRuntime(5715): at android.content.res.TypedArray.getDrawable(TypedArray.java:601)
02-01 10:07:30.301: E/AndroidRuntime(5715): at android.widget.ImageView.<init>(ImageView.java:118)
02-01 10:07:30.301: E/AndroidRuntime(5715): at android.widget.ImageView.<init>(ImageView.java:108)
02-01 10:07:30.301: E/AndroidRuntime(5715): ... 27 more
答案 0 :(得分:1)
你有内存泄漏
当设备更改布局时,将再次创建活动。很可能你会得到一些巨大的静态变量等,这些变量不会被释放
也许在Manifest中添加“onConfigChanged:orientation”标签可以帮助您防止内存泄漏,但对于每种情况都不是一个好的解决方案。
还有几个站点向您展示如何查找内存泄漏,例如this