我已经使用Localytics实现了iOS推送通知,它正在运行,但我对他们如何捕获deviceToken感到困惑。
documentation指示我致电registerForRemoteNotifications
以获取设备令牌。很好,这是标准的。但是,文档没有说明如何处理应用程序委托回调didRegisterForRemoteNotificationsWithDeviceToken
。我假设在返回令牌后我需要在名为setPushToken
的SDK中调用类方法。这是合乎逻辑的事情。但是,它似乎在didRegisterForRemoteNotificationsWithDeviceToken
中没有任何代码的情况下工作。它们是否以某种方式拦截此应用程序委托消息并将令牌传递给其服务器?这是预期的行为吗?如果是这样,SDK中setPushToken
的目的是什么?
答案 0 :(得分:1)
在v 4.1中,似乎他们正在用他们自己的一个代理AppDelegate。
来自他们的autoIntegrate(appKey: String, launchOptions: [NSObject : AnyObject]?)
文档:
使用此方法可将Localytics SDK自动集成到一行代码中。自动 通过代理AppDelegate和"插入"来完成集成。一个Localytics AppDelegate AppDelegate应用程序背后。代理将首先调用应用程序AppDelegate和 然后致电Localytics AppDelegate。
如果您不使用SDK的自动整合,您应该自己调用所有方法,包括setPushToken
然而,似乎有些回调未被正确调用,例如我根本没有didRegisterForRemoteNotificationsWithDeviceToken
,我无法在其他SDK上设置任何推送令牌。
如果我删除auto整合,一切都按预期工作。