javascript - Ionic 3 减少启动时间

标签 javascript android angular typescript ionic-framework

我正在开发 Ionic 3 应用程序(仅适用于 Android)。一切都很好,除了我的应用程序的启动时间有点长(不过分,但大约 4~5 秒)并且一些用户提示它。我很确定有可能做得更好,因为我有其他 Ionic 应用程序,它们的启动时间很少超过 2 秒。 (一旦 platform.ready() 被调用,我自己隐藏启动画面)

现在,我已经在使用一些我经常读到的技术:我正在调用 enableProdMode() 并使用 --prod 标志进行编译。我还添加了 ProGuard(并不是为了加快速度,但仍然可以减少 Java 类的数量,所以为什么不呢),我尝试使用 Crosswalk,但它导致性能更差。

所以我正在寻找下一步:我正在尝试诊断启动画面期间发生的情况,以及我可以做些什么更好。但是我无法找到一种方法来获取有关需要多长时间以及问题出在哪里的数字或统计信息。本能地,我会说通过重构一些 View 来减少 Angular 类的数量并减少代码中 native 插件的数量可能会有所帮助,但我没有找到任何证据。

所以我的两个问题是:

  • 在调用 platform.ready 之前,有没有办法查看启动画面期间需要花费的时间?
  • 是否有一般提示,例如减少插件或类的数量以缩短启动时间?

最佳答案

您需要使用延迟加载。因此,您不会在启动时加载所有页面和插件。延迟加载允许您在调用时仅加载页面和插件。

这里有一些链接可以帮助您解决问题:

http://blog.ionic.io/ionic-and-lazy-loading-pt-1/

http://blog.ionic.io/ionic-and-lazy-loading-pt-2/

希望对您有所帮助。

关于javascript - Ionic 3 减少启动时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47030810/

相关文章:

android - 如何将焦点设置为 0 索引的 ListView

javascript - Angular 2组件指令不起作用

Angular ngrx 存储了解 Reselect 的返回值

angular - 如何处理 Angular 2 中的模板错误(和其他错误)?

Javascript - 如何使滚动条仅在将鼠标移动到相应 div 内时可见

javascript - 调整 HTA 大小时如何固定页面位置

javascript - JS 多个同名函数

javascript - 如何删除数组中对象的重复值?

android - 如何使用 Python RSA 加载 adbkey.pub

java - 同一 Java 类的两个版本,每个版本都有不同的父类(super class)