2

我正在使用 XCode 10.0 将 AppsFlyer 集成到我的 iOS Swift 4 应用程序中。

CocoPods 已安装 AppsFlyer 4.8.9 SDK。

import AppsFlyerLib作品。

didFinishLaunchingWithOptions中,我可以访问AppsFlyerTracker.shared()和设置开发密钥和应用程序 ID。

但是,集成所需的第 3 行代码无法编译。 AppsFlyerTracker.shared().delegate = self

错误信息: Cannot assign value of type 'AppDelegate' to type 'AppsFlyerTrackerDelegate?'

XCode 的建议: Insert ' as! AppsFlyerTrackerDelegate'

这个建议不起作用。该应用程序崩溃并出现以下错误:

AppsFlyer SDK 版本 4.8.9 开始构建 (728) 无法将类型“MyApp.AppDelegate”(0x1057d0830) 的值转换为 >“AppsFlyerTrackerDelegate”(0x1056dcff8)。2018-10-27 18:17:49.448100-0700 Modacity [69104:7269920] 无法将“MyApp.AppDelegate”(0x1057d0830) 类型的 > 值转换为 >“AppsFlyerTrackerDelegate”(0x1056dcff8)。

帮助?如何设置委托?

谢谢!

4

1 回答 1

0

出现此消息是因为您尚未使该类符合AppsFlyerTrackerDelegate协议。

AppsFlyerTrackerDelegate如果这是您的主要 AppDelegate,请添加到符合协议的类中:

class AppDelegate: UIResponder, UIApplicationDelegate, AppsFlyerTrackerDelegate { ... }

文档应该告诉您在那之后要实现哪些方法......

查看swift 文档中的协议并了解面向协议的编程可能是一个好主意。

从文档中: 图片来自 AppsFlyer 文档

于 2018-10-28T01:28:41.320 回答