1

我已经使用 Localytics 实现了 iOS 推送通知,并且它正在工作,但我对它们如何捕获 deviceToken 感到困惑。

文档指示我调用registerForRemoteNotifications以获取设备令牌。好吧,这是标准的。但是,文档没有说明如何处理应用程序委托回调didRegisterForRemoteNotificationsWithDeviceToken。我假设我需要在setPushToken返回令牌后调用 SDK 中的类方法。这将是合乎逻辑的事情。但是,它似乎在没有任何代码的情况下工作didRegisterForRemoteNotificationsWithDeviceToken。他们是否以某种方式拦截了此应用程序委托消息并将令牌传递给他们的服务器?这是预期的行为吗?如果是这样,setPushTokenSDK中的目的是什么?

4

1 回答 1

1

在 v 4.1 中,他们似乎正在用自己的代理代理 AppDelegate。从他们的autoIntegrate(appKey: String, launchOptions: [NSObject : AnyObject]?)文档中:

使用此方法可在一行代码中自动集成 Localytics SDK。自动集成是通过代理 AppDelegate 并在应用程序 AppDelegate 后面“插入”一个 Localytics AppDelegate 来完成的。代理将首先调用应用程序 AppDelegate,然后调用 Localytics AppDelegate。

如果您不使用 SDK 的自动集成,您应该自己调用所有方法,包括setPushToken

但是,似乎某些回调没有被正确调用,例如我根本没有得到任何didRegisterForRemoteNotificationsWithDeviceToken消息,并且我无法在其他 SDK 上设置任何推送令牌。如果我删除自动集成,一切都会按预期工作。

于 2016-10-21T09:33:16.997 回答