QuickBlox not sending APNS

2019-02-25 02:41发布

问题:

Suddenly I'm getting an error when sending APNS through QuickBlox, and it's so weird cause it was working pretty well before.

After user is logged i'm using TRegisterSubscriptionWithDelegate to register it for APNS, when sending APNS the error is

No recipients. At least one user should be subscribed for APNS (Apple Push) (through SDK or REST API)

Thought it could be something inside my app but when trying to send APNS in admin panel, got the same error:

I've uploaded .p12 certificate and it's valid.

Have no idea what may be happening. Anyone could show me a way to fix it?

回答1:

It means that your users/user don't subscribed to Apple push notifications. Maybe you unsubscribed them.

To check user's devices - go to Users module, open particular user and check this list http://qblx.co/1iC8Dtg

In this example you can see that this particular user subscribed from 2 iOS devices and can receive push notifications.



回答2:

I’ve checked it and for sure that’s the problem. All my devices are being added with same UDID: 02:00:00:00:00:00 despite they have their correct UDID on Apple Developer’s portal.

From iOS 7 pre release:

In iOS 7 and later, if you ask for the MAC address of an iOS device, the system returns the value 02:00:00:00:00:00. If you need to identify the device, use the identifierForVendor property of UIDevice instead. (Apps that need an identifier for their own advertising purposes should consider using the advertisingIdentifier property of ASIdentifierManager instead.)

Does QuickBlox use MAC address to have access to device's UDID? If yes maybe that's the problem.

Since uniqueIdentifier is deprecated in iOS 7 another option is use identifierForVendor but it has a different value.....also you can't use any parameter (UDID or UUID) in TRegisterSubscriptionWithDelegate method.

Wondering if there's another way to subscribe users for APNS with QuickBlox.