【问题标题】:Loading issue with IOS 9 with cordova 4.2IOS 9与cordova 4.2的加载问题
【发布时间】:2015-10-13 05:53:59
【问题描述】:

我在使用 Xcode 7.0.1 时遇到了 cordova 4.2 的问题,当我在 IOS9 上运行我的应用程序时,加载 JS 文件大约需要 25 秒,这与 android 相比非常糟糕。 我试图通过放置标志来检测问题,加载卡在获取车把(因为我使用的是 Ember js)。 我试图在没有改善的情况下缩小 hbs。

function onDeviceReady() { 
Helpers.getScript('app/app.js');
Helpers.getScript('app/helpers.js');
Helpers.getScript('app/init.js');
Helpers.getScript('app/router.js');
} 

提前致谢

【问题讨论】:

  • 你能在列出/加载 JS 文件的地方发布 HTML 元素吗?
  • 感谢您的回复。我在 deviceReady() 上加载这些文件,如下所示: function onDeviceReady() { Helpers.getScript('app/app.js'); Helpers.getScript('app/helpers.js'); Helpers.getScript('app/init.js'); Helpers.getScript('app/router.js'); }
  • 没有。请把代码放在原帖中。我看不懂。
  • 嗯?!我很困惑。在这些脚本中,是否有在您调用它时触发的实时代码,还是只是一堆函数?
  • 这里我使用 AJAX 调用加载所有模板、路由、控制器、组件。

标签: javascript ios cordova ember.js


【解决方案1】:

好的。如果您所做的只是加载文件,则无需延迟加载这些文件。如果您在这些文件中有一些活动代码,您唯一希望延迟加载文件*是*

需要明确的是,有些库会在加载后立即加载并激活。这些库会以某种方式设置变量或访问系统。这些类型的库需要在deviceready 事件之后加载。否则,您可以尽快加载库,甚至在deviceready 事件之前。

在您的应用程序上,我无法说明为什么它会延迟启动。你说 20+ 秒,我只能认为可能是库加载延迟。

注意:并非所有应用的构建方式都相同。这意味着在 Android 上,有系统自带的库,也有 Cordova 添加的库。可能,(可能是)您正在 iOS 系统上加载更大的 APP,这可能是延迟。

无论如何,让我知道您尝试了什么,什么有效,什么无效。

【讨论】:

  • 感谢您的回复。实际上我尝试在一些把手(.hb 文件)中检测问题并对其进行评论。然后我尝试再次运行该应用程序,花了 4 秒。这些文件的大小很大,但与其他需要 20 毫秒的文件相比,它应该需要 2 秒或 1 秒 pre .hbs。
猜你喜欢
  • 2014-09-22
  • 1970-01-01
  • 1970-01-01
  • 2016-04-02
  • 1970-01-01
  • 2015-07-17
  • 1970-01-01
  • 2015-12-14
  • 2015-12-16
相关资源
最近更新 更多