我們有一個全面的iOS應用程序混合模式 - 一個UIWebView在JS中的Web應用程序的主要部分。它在iOS6上運行良好,但最近我們發現所有iOS7設備(iPad,iPhone 4/4S和iPhone 5/5C/5S)發生嚴重的內存不足崩潰。我們在iOS模擬器的iOS6和7上分析了內存消耗。通過在應用程序中進行相同的交互,iOS6中WebView的內存消耗總是低於200MB,而在iOS7上它可以超過800MB!
我們猜想iOS7上的WebView存在一些嚴重的內存管理問題。但缺乏在WebView中剖析JS的工具,我們找不到根本原因。 在這裏,我們想問問任何人是否有類似的問題,並且任何工具/方法都可以幫助進一步深入瞭解UIWebView以挖掘確切的問題。謝謝。iOS7 UIWebView內存泄漏
9
A
回答
0
在處理json對象時,UIWebView和iOS7本機Safari瀏覽器似乎在內存管理上都有問題。 如果您的字典具有深嵌套結構,並且您碰巧有一個關鍵字是數字字符串,並且它小於99999,則可能會經常收到內存警告。
類似,
{"**98304**":
{"key":
{"2ndLevelKey":
{
"address":"10928 Homestead rd","city":"Cupertino","Zip":95014
}
}
}
}
周圍的工作很簡單,嘗試更換鍵 「」 像 「ID98304」。 希望你已經解決了這個問題。 :)
+0
當這個問題將被修復? – wawanopoulos
+0
錯誤15476175於11月14日提交給蘋果公司,迄今爲止沒有更新狀態。 –
1
我沒有足夠的聲望來upvote或評論。所以我認爲「答案」是我可以貢獻的唯一方式。
我同意朱明的貢獻。我發現如果你有5個數字鍵(9999 <鍵< = 99999),iOS 7上的內存使用量會爆炸。
下面是我在嘗試重現崩潰我的應用時遇到的示例代碼。
tempobj = {};
for(var i=1; i<2000; i++){
var temp = {};
tempobj[i] = temp;
temp[98304] = "hello world";
}
在找到這個計算器之前,我也向蘋果提交了一個bug,但看起來這是一件好事。
相關問題
- 1. UIWebView內存泄漏
- 2. UIWebView中的內存泄漏
- 3. (很多)UIWebView內存泄漏
- 4. UIWebView的內存泄漏
- 5. IOS7 - Xcode5 - 內存泄漏無代碼
- 6. 使用UIWebView和Javascript的內存泄漏
- 7. 使用UIwebview時發生內存泄漏
- 8. 海量的UIWebView內存泄漏
- 9. 在uiwebview分配內存泄漏
- 10. Font Glyph/UIWebView中的內存泄漏
- 11. UIWebview javascript泄漏?
- 12. UIWebView的泄漏
- 13. 內存泄漏
- 14. 內存泄漏:
- 15. 內存泄漏
- 16. 內存泄漏
- 17. 內存泄漏
- 18. 內存泄漏
- 19. 內存泄漏
- 20. 內存泄漏
- 21. 內存泄漏
- 22. 內存泄漏
- 23. 內存泄漏:
- 24. 內存泄漏
- 25. 內存泄漏
- 26. 內存泄漏
- 27. 內存泄漏
- 28. 內存泄漏
- 29. 內存泄漏
- 30. 內存泄漏
這似乎與http://stackoverflow.com/questions/19150961/ios7-webkit-crashes-frequently-not-freeing-up-memory –