javascript - 如何控制 Cordova 中的内存使用?

标签 javascript ios cordova web-applications single-page-application

我现在使用的是 iOS,但这个问题也适用于 Android。我正在查看 Xcode 中的内存图,我的应用程序在达到 240MB 左右时崩溃,我相信 iOS 正在杀死它,因为它占用了太多内存。

我总是可以通过在应用程序的页面之间导航来让它崩溃。 (这是一个 SPA,客户端 HTML 呈现。)如果我停止导航一分钟,内存将下降到 140MB。

这是 OSX Chrome 中的同一页面:

enter image description here

在这种情况下,停止导航后,内存不会自行减少。相反,图表末尾的悬崖是我按下垃圾收集按钮(将其从 170MB 降低到 60MB)。

如何阻止我的应用程序崩溃?

  1. 我可以在 Cordova 中调用垃圾回收按钮吗?
  2. 我能否让 iOS 为我的应用提供特殊的大内存限额?
  3. 如果用户在一分钟内在页面之间导航 X 次,我可以设置一个超时屏幕,告诉他们下一分钟不能使用该应用程序,因为垃圾收集正在进行 XD
  4. 在 JS 渲染 HTML 时,有什么方法可以降低斜坡上的内存使用量?

此外,这是带有 HTML 节点的 Chrome 图表——按比例增长,但节点在垃圾回收后保持在同一水平。

enter image description here

最佳答案

您可以尝试使用 WKWebView插件,有时可以减少 Cordova 应用程序的 iOS 内存使用量。

关于javascript - 如何控制 Cordova 中的内存使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30813443/

相关文章:

iOS >> 广告转化链接 : Is there a way to "catch" from which site/banner/ad users got to my app in the App Store?

ios - Coreml,验证输入失败。图片无效

ios - Swift UIPageViewController 和 UIActivityIndi​​catorView

android - 如何在 Phonegap 中针对不同的主题/布局

android - 如何使用白名单配置 Cordova-android 4.0

javascript - NodeJS 中的 varexports = module.exports = {}

Javascript 计时器 - 检查还剩多长时间

android - 如何在JQMobile中将列表背景设置为透明?

javascript - 单击 alt 为示例的图像

javascript - 创建一个函数,将字符串格式化为始终在小数点后显示两位有效数字,而不使用方法