我必须在我的项目中使用很多第三方依赖项(主要是分析),每一个都建议在
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool
所以我有这样的东西:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
//FB sdk
FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
// Firebase
FirebaseApp.configure()
// AppsFlyer
AppsFlyerTracker.shared().appleAppID = AccessKeys.appleAppID
Fabric.with([Crashlytics.self])
GMSServices.provideAPIKey(AccessKeys.googleMapsApiKey)
return true
}
我认为这会降低应用程序的启动速度,而且在我的AppDelegate中看起来很难看。我该如何改进?在根(初始)视图控制器中初始化这些库是一个好主意吗?提前谢谢!
最佳答案
相信我,如果你对所有这些都有依赖性,你就无能为力了。在查看您正在使用的库时,我只能建议您使用Firebase crash reporting而不是Fabric。这将至少删除一个依赖项,因为FirebaseApp.configure()
还将初始化Firebase崩溃报告。
关于ios - iOS Appdelegate多个第三方依赖关系初始化会减慢应用程序的启动速度,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49512093/