我正在尝试修复具有以下功能的应用程序中的outofMemory:
public byte[] processByteArray (int bits) throws OutofMemoryError {
byte [] arr =new byte [bits];
//do something and
return arr;
}
我不确定用户为值位提供什么,因此得到异常Dalvik说536870812字节分配超过了67108864字节的最大堆大小。
所以,我做了类似这样的事情并不好,但现在解决了问题:
在类中私有地声明arr并访问内部函数,如下所示:
public byte[] processByteArray (int bits) throws OutofMemoryError {
if(bits<=67108864) {
byte [] arr =new byte [bits]; //tell me if this is right..!
}
//do something and
return arr;
}
我不知道我怎么能解决这个问题,我想知道最大限制字节[] arr可以接受我的函数,我的意思是我想知道新字节中的参数 - “位”限制[位] ; 。请教育我..任何建议将不胜感激。谢谢。