iOS 链接框架影响加载时间?
我有一个 iOS 应用程序,它链接到 15 个 Apple 框架(包括每个应用程序使用的大约 3 个基本框架)。我注意到我的应用程序的加载时间和从后台恢复的时间相当长,尽管可执行文件只有 600kb。所有这些框架都可能是加载时间问题的原因吗?是否可以根据需要延迟加载框架?
I've got an iOS app that links to 15 Apple frameworks (including the ~3 basic ones every app uses). I've noticed that my app's load time, and time restoring from the background, is pretty high, though the executable is only 600kb. Could all these frameworks be the cause of the load time issue? And is it possible to, say, lazily-load frameworks as needed?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的,动态链接的框架确实会影响加载时间,您可以使用时间分析器在仪器中看到这一点。当您的应用程序启动时,您应该看到 dyload 正在运行,并且在每个框架中加载都需要一些时间。
更糟糕的是,如果像 +initialize 这样的静态代码也将在加载时运行,从而进一步减慢您的应用程序的速度。
Yes dynamically linked frameworks do affect load time, you can see this in instruments using the time profiler. You should see dyload running as your app launches and it will take time to load in each framework.
Even worse if have static code in something like +initialize this will run at load time too, further slowing your app.