未收到Mac上自定义logging区域的CloudKit推送通知

我已经设置了自定义区域订阅,以从我的自定义logging区域接收(静默)推送通知。 一切工作正常在我的iOS设备上,但我不能在我的Mac上收到通知。

要注册通知,我正在注册applicationDidFinishLaunching的通知types:

 [[NSApplication sharedApplication] registerForRemoteNotificationTypes:NSRemoteNotificationTypeNone]; 

(尝试其他types的结果相同)

 application:didRegisterForRemoteNotificationsWithDeviceToken: 

然后用有效的令牌调用。 一切似乎很好,但是当自定义区域注册更改,我收到没有通知和

 application:didReceiveRemoteNotification: 

不叫。 我也尝试设置警报正文为这样一个空string:

 CKNotificationInfo *info = [[CKNotificationInfo alloc] init]; info.alertBody = @""; info.shouldSendContentAvailable = YES; 

但它也没有工作。 当我设置一个string作为警报主体(并注册适当的通知types)时,我也会在右上angular得到一个关于该主体的通知,但application:didReceiveRemoteNotification:不会被调用。

希望您能够帮助我。 谢谢!

我认为这是与macOS塞拉利昂。 现在为我工作。

编辑:哦哇:只是注意到我(!)在15年前问这个问题。 🙂

简单地从一个共享链接提取正确的解决scheme:如果您使用CKNotificationInfo警报,didReceiveRemoteNotification将不会在Mac上调用,除非您将CKNotificationInfo.soundName设置为空string! 这看起来像只在OS X(到目前为10.10和10.11)的错误,但可以通过这个简单的变化来解决。