2015-12-08 1 views
0

Swift 2,0, iOS9Использование ICloud для Prefs пользователей путем CloudKit

В моем приложении, я могу сохранить префы пользователя путем ICloud. В первый раз, когда они пытаются опубликовать данные, база данных настроена, а пользовательская БД - все их, отлично, может хранить все там. Фантастика!

звучит как Святой Грааль, легкие, безопасные, не логины, любить его, но когда App попробовать, чтобы получить доступ к сохраненным записям, это плюнуть на меня:

Optional(<CKError 0x12462cc60: "Invalid Arguments" (12/2015); server message = "Field '___recordID' is not marked queryable"; 

И там, кажется, никто не обновляется в коде, так как я могу получить данные из iCloud, если я не могу обновить этот параметр? Скорее всего, путь? спасибо

ответ

3

Вам необходимо использовать CloudKit Dashboard, чтобы отметить свойство ID записи этого типа записи как запрошенное.

Выберите тип записи и нажмите "Индексы метаданных". Установите флажок «Запрос» рядом с полем «Идентификатор записи», и эта ошибка должна исчезнуть.

+1

Да, но приложение запускается с чужого сотового телефона. Так это их iCloud. Они просто загружают приложение, поэтому у меня нет доступа к этой панели. Это затруднительное положение. Сохранение в порядке, получение данных - нет. Я также должен отметить поле creationTime как sort-able. –

+0

Панель управления управляет настройками в контейнере. Параметры типа записи являются частью схемы контейнера и применяются ко всем пользователям. Вы можете прочитать больше в документации [CloudKit Dashboard documentation] (https://developer.apple.com/library/ios/documentation/DataManagement/Conceptual/CloudKitQuickStart/Introduction/Introduction.html). – farktronix

+0

У меня нет доступа к пользовательской панели CloudKit. Может быть, мне не хватает чего-то фундаментального здесь. Пользователь может сохранить Prefs в Cloud Kit, проблема в том, что они не могут их извлекать, поскольку индекс в CloudKit не помечен как «queryable». Должен быть способ, которым я это настрою. Просматривая документы, все говорят обновить в «My CloudKit Dashboard». Спасибо за помощь. –