2016-11-07 1 views
0

Это, как я готовлю подписку:Как предотвратить уведомление пользователей на экране о новых изменениях в CloudKit?

class func saveSubscriptions() { 

    let options: CKSubscriptionOptions = [.firesOnRecordCreation, .firesOnRecordUpdate, .firesOnRecordDeletion] 
    let serviceSubscription = CKSubscription(recordType: "Service", predicate: NSPredicate(value: true), options: options) 

    let notificationInfo = CKNotificationInfo() 
    notificationInfo.alertLocalizationKey = "s" 
    notificationInfo.shouldBadge = false 
    notificationInfo.shouldSendContentAvailable = false 

    serviceSubscription.notificationInfo = notificationInfo 

    CloudContainer.publicCloudDatabase.save(serviceSubscription) { _, _ in } 
} 

и уведомление на экране появляется постоянно.

enter image description here

Я действительно не хочу это здесь. Есть ли способ доставить уведомление, если приложение активно, но ничего не отображать, пока приложение не работает или находится в режиме переднего плана?

ответ

1

Необходимо правильно настроить информацию об уведомлении. Не устанавливайте alertLocalizationKey. shouldSendContentAvailable должно быть установлено в true.

+0

отлично работает :) спасибо ... –

1

Попробуйте этот код, это не будет показывать баннер уведомления

let notificationInfo = CKNotificationInfo() 
notificationInfo.shouldBadge = false 
notificationInfo.shouldSendContentAvailable = true 
subscription.notificationInfo = notificationInfo 
Смежные вопросы