IOS 带有 Typhoon 的应用程序启动速度太慢
IOS application with Typhoon is launched too slow
我在用 Objective-C 编写的 iOS 应用程序中使用 Typhoon 3.6.0 进行依赖注入。应用程序中有 3000 多个 TyphoonDefinition。当前应用程序启动时间超过 4 秒。
Xcode TimeProfiler 显示 Typhoon 在应用程序启动时调配了项目中的每个 Typhoon 定义。这就是为什么需要这么长时间。
如何优化 Typhoon 启动并减少应用启动时间?
使用 Typhoon 4.0.0,因为它使用代理而不是 swizzling 来检测应用程序程序集 - 非常大的程序集的启动时间要快得多。
如果您仍然看到启动时间比预期的要慢,并且您不需要自动连接,则可以禁用它。
最后,如果您更喜欢 Swift,您可能希望使用新的 Swift 版本的 Typhoon。从最终用户的角度来看,它非常相似,但是本着 ARC 和 Swift 的精神,它使用编译时检测而不是运行时。
我在用 Objective-C 编写的 iOS 应用程序中使用 Typhoon 3.6.0 进行依赖注入。应用程序中有 3000 多个 TyphoonDefinition。当前应用程序启动时间超过 4 秒。
Xcode TimeProfiler 显示 Typhoon 在应用程序启动时调配了项目中的每个 Typhoon 定义。这就是为什么需要这么长时间。
如何优化 Typhoon 启动并减少应用启动时间?
使用 Typhoon 4.0.0,因为它使用代理而不是 swizzling 来检测应用程序程序集 - 非常大的程序集的启动时间要快得多。
如果您仍然看到启动时间比预期的要慢,并且您不需要自动连接,则可以禁用它。
最后,如果您更喜欢 Swift,您可能希望使用新的 Swift 版本的 Typhoon。从最终用户的角度来看,它非常相似,但是本着 ARC 和 Swift 的精神,它使用编译时检测而不是运行时。