我的代号为一个应用程序,在Android和模拟器上运行良好,但在我的iPad上没有。我已经在iPad和iPhone设备上进行了测试,它崩溃了。
在iPad(iPad3,4)上,我看到崩溃后生成的JetsamEvent
事件。
This answer似乎表明这是一个内存问题,但我只在Apple设备(iPad和iPhone)上遇到此问题。
有人有任何建议来管理或改善我的应用程序的内存吗?
在我测试的所有类型的Android设备中,应用程序从未像这样崩溃。
崩溃总是很随意。崩溃后,我重复相同的操作,它不会崩溃。这完全是随机的。
提前致谢。
答案 0 :(得分:0)
这样的崩溃报告没什么可做的,我建议使用Log
类来跟踪崩溃实际发生的位置,并使用消除过程来确定哪一段代码负责崩溃。
答案 1 :(得分:0)
经过大量测试后,我发现问题出在mapResponse对象中,以及它在iOS系统中的工作原理。
如果mapResponse很小,您可以这样做:
String resResponse=(String)mapResponse.get("RES");
在iOS中没有问题。
但如果响应很大(例如4000个字符),则mapResponse.get("RES")
不是真正的字符串。仅使用该错误的String对象会使应用程序崩溃,例如:
if (resResponse != null && resResponse.startsWith("SUP"))
所以我必须检查mapResponse对象是否是字符串,如下所示:
isError=(objResp instanceof String)