ios - 台风与 Swift 4 的 AppDelegate 集成

标签 ios swift swift4 typhoon

我一直在 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/

相关文章:

iOS Stringsdict 回退

ios - 体系结构 i386 的 undefined symbol : _FlutterMethodNotImplemented

ios - 如何在 iOS Swift 4 中的视频上添加图像水印?

ios - CloudKit modifyRecordsCompletionBlock 随机失败

swift - Observable 更改时不返回值

iOS 5.0 sendEvent 调用了两 [2] 次

ios - 如何在 Delegate 中检查 UITableView 中的当前 Controller

swift - 无法将类型 'AnyObject' 的返回表达式转换为返回类型 'NSComparisonResult'

ios - 在 Swift 中将数字四舍五入到小数点后两位

ios - 将不同的 Google 地点类别归为一类