私のサブスクリプションは単純な述語に基づいています
NSPredicate * sPredicate1 = [NSPredicate predicateWithFormat:@"(inviteCode == %@)", walletUser.inviteCode];
CKSubscription * s = [[CKSubscription alloc] initWithRecordType:@"Invite"
predicate:sPredicate1
subscriptionID:sID
options:CKSubscriptionOptionsFiresOnRecordDeletion];
特定のinviteCodeを含む1つのレコードを監視し、レコードが削除されたときに通知を送信するだけです(招待が他のユーザーによって受け入れられました)。ただし、他のデバイスからプログラムで招待を削除した場合、プッシュ通知は発生しません。ただし、ダッシュボードから招待を削除すると、通知が送信されます。誰かがこのバグで私を助けることができますか?
PS。サブスクリプションがサーバーに正常に保存されていることは確かです-ダッシュボードに表示されます。
更新しました:
答えはここにありました CKSubscription による CKRecord の削除を観察してください。