Gcm iOS,订阅主题,错误代码3004
我正在尝试订阅iOS上的gcm主题Gcm iOS,订阅主题,错误代码3004,ios,google-app-engine,google-cloud-messaging,publish-subscribe,Ios,Google App Engine,Google Cloud Messaging,Publish Subscribe,我正在尝试订阅iOS上的gcm主题 GCMPubSub.sharedInstance().subscribeWithToken(registrationId, topic: "/topics/mytopic", options: nil) { error in print(error.localizedDescription) } 无法完成该操作。(com.google.gcm错误3004。) 我在任何地方都找不到此错误代码的文档。我还阅读了定义错误的源代码,代码如下所示: ty
GCMPubSub.sharedInstance().subscribeWithToken(registrationId, topic: "/topics/mytopic", options: nil) { error in
print(error.localizedDescription)
}
无法完成该操作。(com.google.gcm错误3004。)
我在任何地方都找不到此错误代码的文档。我还阅读了定义错误的源代码,代码如下所示:
typedef NS_ENUM(NSUInteger, GCMServiceErrorCode) {
/**
* HTTP errors.
*/
// InvalidRequest -- Some parameters of the request were invalid.
kGCMServiceErrorCodeInvalidRequest = 0,
// Auth Error -- GCM couldn't validate request from this client.
kGCMServiceErrorCodeAuthentication = 1,
// NoAccess -- InstanceID service cannot be accessed.
kGCMServiceErrorCodeNoAccess = 2,
// Timeout -- Request to InstanceID backend timed out.
kGCMServiceErrorCodeTimeout = 3,
// Network -- No network available to reach the servers.
kGCMServiceErrorCodeNetwork = 4,
// OperationInProgress -- Another similar operation in progress,
// bailing this one.
kGCMServiceErrorCodeOperationInProgress = 5,
// Unknown error.
kGCMServiceErrorCodeUnknown = 7,
/**
* Upstream Send errors
*/
// Upstream send not available (e.g. network issues)
kGCMServiceErrorCodeUpstreamServiceNotAvailable = 1001,
// Invalid send parameters.
kGCMServiceErrorCodeInvalidParameters = 1002,
// Invalid missing to.
kGCMServiceErrorCodeMissingTo = 1003,
// GCM could not cache the message for sending.
kGCMServiceErrorSave = 1004,
// Message size exceeded (size > 4KB).
kGCMServiceErrorSizeExceeded = 1005,
/**
* GCM Connect errors.
*/
// GCM already connected with the client.
kGCMServiceErrorCodeAlreadyConnected = 2001,
/**
* PubSub errors.
*/
// Topic already subscribed to.
kGCMServiceErrorCodePubSubAlreadySubscribed = 3001,
// Topic already unsubscribed from.
kGCMServiceErrorCodePubSubAlreadyUnsubscribed = 3002,
// Invalid topic name, does not match the topic regex "/topics/[a-zA-Z0-9-_.~%]+"
kGCMServiceErrorCodePubSubInvalidTopic = 3003,
};
错误代码在3003结束 我以前见过这种情况,因为我在使用
GCMPubSub
之前没有启动GCM。所以这应该能帮你解决
var config = GCMConfig.defaultConfig()
// Note you should only call start once during the lifetime of your app.
GCMService.sharedInstance().startWithConfig(config)
GCMPubSub.sharedInstance().subscribeWithToken(registrationId, topic: "/topics/mytopic", options: nil) { error in
print(error.localizedDescription)
}
我的问题是你甚至不能打电话
gcmpubsubsub.sharedInstance()
直到调用GCMService.sharedInstance().startWithConfig(config)
因此,在实际调用
subscribowithToken
之前,不能将gcmpububub.shareInstance()
存储为属性,这是我错过的。非常感谢!我也有这个问题,这并没有解决我的错误代码3004谢谢!请注意,任何不注意GCMService
和gglyinstanceid
的人:两者是不同的!