我已经搜索过这个问题,似乎答案都很陈旧,含糊不清,或者没有答案。对于Android 4.4+到5.1的java,我希望超过50MB的最大堆大小。似乎没有jvm命令行参数,android只有一个设置你可以放在android清单文件中。另外在另一个较旧的参考文献中,我看到jvm和“JIT”设置有一个“快速”设置。所以我不确定今天用于Android的是什么来运行java以及我们为堆提供了哪些选项。
感谢您的帮助。 托尼
答案 0 :(得分:2)
对于Android 4.4+到5.1的java,我希望超过50MB的最大堆大小。
鉴于该设备,这可能是也可能是不可能的。
似乎android
没有jvm命令行参数
这是因为Android不使用JVM或命令行。
只有一个设置可以放入android清单文件
android:largeHeap="true"
请求“大”堆。您是否获得更大的堆限制以及该限制是由设备制造商决定的,而不是您。例如,在具有低系统RAM的设备(例如,具有512MB RAM的Android One设备)上,不仅您的常规堆限制可能低于50MB,而且您的大堆限制可能低于50MB。
另外在另一个较旧的参考文献中,我看到jvm和“JIT”设置有一个“快速”设置。
请引用,因为Android不使用JVM。
所以我不确定今天的Android用于运行java以及我们为堆提供了哪些选项。
你有android:largeHeap
,这就是影响Dalvik / ART进程(即传统的Android应用程序)的堆限制。
另外,正如MatjažMav在the above comment中所说,使用大堆会对用户和其他开发人员产生影响。