Мой вопрос заключается в том, как я могу получить текущую информацию о пользователе, вошедшем в систему, из iCloud с помощью cloudkit. я хочу добавить больше полей в этот раздел пользовательских значений по умолчанию и получить эти данные, когда захочу. Я попытался создать новую схему для сохранения пользовательских данных.
Как получить текущую информацию о пользователе из iCloud с помощью Cloudkit, swift
Ответы (1)
Можно добавить дополнительные поля в тип записи пользователя в CloudKit, но это не рекомендуется. Пользовательский тип записи — это специальный тип записи с множеством ограничений. Лучше создать новый тип записи, куда будут сохраняться дополнительные пользовательские настройки. Затем вы можете установить CKReference для фактического идентификатора записи пользователя.
Для получения идентификатора записи активного пользователя используйте функцию CKcontainer
fetchUserRecordIDWithCompletionHandler
. Если вы хотите получить имя и фамилию (больше информации получить нельзя), то используйте функцию discoverUserInfoWithUserRecordID
person
Edwin Vermeer
schedule
10.05.2016
Спасибо за ответ. я попытаюсь сделать новую запись и сохранить в ней информацию о пользователе. Меня беспокоит то, что в соответствии с рекомендациями Apple мы не должны видеть или обнаруживать пароль пользователя, поэтому при создании записи пользователя имя пользователя и пароль должны быть сохранены в этой записи пользователя. Если я это сделаю, я смогу увидеть пароль пользователя. Заставит ли это Apple отказаться от моего приложения?
- person Dr.Ax; 10.05.2016
Вам не нужен логин пользователя. Когда вы используете CloudKit, вы будете точно знать, что его учетная запись iCloud верна и вы вошли в систему. Вы можете запросить идентификатор пользователя и имя. Если это не удастся, вы узнаете, что пользователь не вошел в систему, и вы можете попросить пользователя войти в iCloud в приложении настроек.
- person Edwin Vermeer; 10.05.2016
Просто обратите внимание, что
discoverUserInfoWithUserRecordID
устарел в iOS 10. Предпочтительными методами теперь являются методы discoverUserIdentity(with....)
.
- person Anthony C; 31.01.2017
CKContainer
. - person rmaddy   schedule 09.05.2016