我一直在 Swift 3 中使用 Typhoon 和 AppDelegate 集成,没有任何问题,但自从更新到 Swift 4 和 Xcode 9 后,我遇到了一个问题,即从未调用 initialAssemblies()
。
AppDelegate.swift
func initialAssemblies() -> NSArray {
return [SharedComponentsAssembly.self,
ViewControllersAssembly.self]
}
以前在 Swift 3 和 Xcode 8 中:initialAssemblies()
在 application(_:didFinishLaunchingWithOptions:)
之前被调用
现在在 Swift 4、Xcode 9 中:initialAssemblies()
永远不会被调用
我查看了 Activating Assemblies来自 Typhoon wiki 的指南,但找不到解决方案。 现在我使用 plist 集成作为解决方法,但我更愿意使用 AppDelegate 集成。
如果有人成功使用了 AppDelegate 与 Swift 4 的集成,请帮忙!
最佳答案
您是否尝试添加“@objc”说明符? 就这样
@objc func initialAssemblies() -> [Any] {
return [SharedComponentsAssembly.self,
ViewControllersAssembly.self]
}
我已经检查过,这个方法在我的案例中被调用了。
关于ios - 台风与 Swift 4 的 AppDelegate 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47661422/