我们今天开始在运行我们的应用程序时注意到此错误。我们尚未在互联网上找到与此相关的任何内容。这仅仅是GCM的问题还是我们需要解决的某些操作顺序?

2015-12-23 11:44:01.411: GGLInstanceID | Invalid last checkin timestamp in future.
2015-12-23 11:44:01.471: GGLInstanceID | Unable to find token in cache Error Domain=com.google.iid Code=-25300 "(null)"

最佳答案

不能100%地确定这是解决所有问题的方法,但是我再也看不到这个问题了,我相信这仅仅是由于操作顺序而已。下面是我正在使用的顺序,看起来似乎还可以。

在AppDelegate中,didFinishLaunchingWithOptions:

let instanceIDConfig = GGLInstanceIDConfig.defaultConfig();
instanceIDConfig.delegate = self
GGLInstanceID.sharedInstance().startWithConfig(instanceIDConfig)

在AppDelegate中didRegisterForRemoteNotificationsWithDeviceToken:
gcmRegistrationOptions = [kGGLInstanceIDRegisterAPNSOption:deviceToken, kGGLInstanceIDAPNSServerTypeSandboxOption:true];
GGLInstanceID.sharedInstance().tokenWithAuthorizedEntity(gcmSenderID,
                scope: kGGLInstanceIDScopeGCM,
                options: gcmRegistrationOptions,
                handler: gcmRegistrationHandler);

在AppDelegate gcmRegistrationHandler中:
if let _ = registrationToken {
     //REGISTER TOKEN WITH BACKEND
}

在AppDelegate的onTokenRefresh中:
GGLInstanceID.sharedInstance().tokenWithAuthorizedEntity(gcmSenderID,
            scope: kGGLInstanceIDScopeGCM,
            options: gcmRegistrationOptions,
            handler: gcmRegistrationHandler)

关于iOS GCM-GGLInstanceID |将来的上次 checkin 时间戳无效,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34440336/

10-10 19:29