このコードで CloudKit にサブスクライブしようとすると:
NSPredicate *truePredicate = [NSPredicate predicateWithValue:YES];
CKSubscription *itemSubscription = [[CKSubscription alloc] initWithRecordType:RecordType
predicate:truePredicate
options:CKSubscriptionOptionsFiresOnRecordCreation | CKSubscriptionOptionsFiresOnRecordUpdate | CKSubscriptionOptionsFiresOnRecordDeletion];
CKNotificationInfo *notification = [[CKNotificationInfo alloc] init];
notification.alertBody = @"Item Added/Updated/Deleted!";
itemSubscription.notificationInfo = notification;
[self.publicDatabase saveSubscription:itemSubscription completionHandler:^(CKSubscription *subscription, NSError *error) {
if (error) {
// In your app, handle this error appropriately.
NSLog(@"An error occured in %@: %@", NSStringFromSelector(_cmd), error);
} else {
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:subscription.subscriptionID forKey:kSubscriptionID];
[defaults synchronize];
}
}];
時々このエラーが発生します:
CKError 0x17558460: "サーバーは要求を拒否しました" (15/2000); server message = "内部サーバー エラー"; uuid = B89DE7A4-9D22-42BC-9CD4-4330F3FE04EF; コンテナー ID = "iCloud.com.app.testApp"
また
CKError 0x14fb3510: "サービスを利用できません" (2022 年 6 月); サーバー メッセージ = "スキーマのインストールに失敗しました。CAS に失敗しました"; uuid = F562D1AD-B40E-4842-A5EA-2A5F800C18F2; コンテナー ID = "iCloud.com.app.testApp"
誰もそれを修正する方法を知っていますか? 自分のコードで何かできますか? これは Apple の問題で、私にはどうすることもできませんか? ありがとう。