2016-07-14 85 views
1

我正在开发我的第一款android游戏。 我在我的项目中使用了milkman ane。它工作正常,直到新版本(2.1.0)。Java outOfMemoryError - 增加Java堆空间并没有帮助(?)

所以现在我在包装上得到一个OutOfMemoryError apk。这可能是相关的,我使用flashdevelop IDE。我发现了一些增加Java堆空间的解决方案(通过加入params -Xms1024M -Xmx1024M)。但他们没有帮助我的情况。

这是我曾尝试:

1)设置参数SDK /斌/ jvm.config:没有结果

2)后的Java参数导入的Flex SDK adt.bat。但它看起来像@java -jar "%~dp0\..\lib\adt.jar" %*。所以这没有帮助。

3)我发现参数应该设置为“程序文件(x86)/ADT/bin/adt.bat”。但是在我的电脑上没有这样的东西。 我的意思是在不同的应用程序中有很多adt.bat文件,但它们都像第二种解决方案。我找不到主要(?)adt.bat。

4)我试图把参数放到project/bat/packager.bat(其中adt被调用),但它导致软件包崩溃。 我试图把参数放在adt调用的不同地方,但每次都是一样 - 结果。

5)我甚至增加了_JAVA_OPTIONS环境变量。 成功消息“拾起_JAVA_OPTIONS -xmx1024M” 但是...然后仍然是同样的错误。

我真的需要有人帮助我。我的错误在哪里?

+0

让我看看我是否正确:在应用程序运行时或在IDE创建apk将其安装到设备上时收到异常? –

+0

您通常会因为代码中存在缺陷而导致内存不足。你可以发布错误的堆栈跟踪和错误被抛出的代码吗? –

+0

你应该阅读** [这个答案](http://stackoverflow.com/a/10822672/2057709)**。它可能对你有用。无论如何,当你使用由MilkMan公司制造的一些ANE的新版本时,你的问题就开始了,所以也许它会让他们在他们的ANE中解决代码问题(他们知道吗?联系他们),否则你会回到最后一个工作版本的ANE ... –

回答

1

尝试应用元素加入到这个清单:

android:largeHeap="true" 

你可以阅读更多关于它here

+0

不,同样的错误。根据我的理解,它应该是这样的: ....) –

+0

如果这样做没有成功,那么我倾向于认为代码中存在一些错误。另外,你可能想在你不需要它们的时候尝试在你的活动中调用'this.finish()'。 –

1

这里是类似的问题。 https://forums.adobe.com/thread/1047755

Addidng下面一行到你的.bash_profile:

export _JAVA_OPTIONS="-Xms1024m -Xmx4096m -XX:MaxPermSize=512m" 

刷新:

$ source ~/.bash_profile 

,并建立APK。

我知道您已尝试过_JAVA_OPTIONS,但-xmx1024M可能很小。

相关问题