Вот цель:
- Пользователь A и пользователь B являются пользователями приложения.
- Они используют разные устройства, зарегистрированные в разных учетных записях iCloud.
- Оба пользователя включают возможность обнаружения в приложении.
- После включения пользователь А может видеть, что пользователь Б использует приложение, и наоборот (при условии, что у обоих есть электронные письма iCloud друг друга в их контактных книгах).
В настоящее время я выполнил следующие шаги, но discoverAllContactUserInfosWithCompletionHandler
возвращает пустое значение. Я в тупике. у меня есть:
- Настроил приложение для CloudKit
- Проверяю статус с
accountStatusWithCompletionHandler
. Я получаюaccountStatus == .Available
- Проверьте разрешение на обнаружение с помощью
statusForApplicationPermission(CKApplicationPermissions.PermissionUserDiscoverability)
. Я получаюpermissionStatus == .Granted
- Теперь я запрашиваю пользователей приложения, используя
discoverAllContactUserInfosWithCompletionHandler
. В блоке завершения я не получаю ошибок и пустой массив пользователей. Я также пытался использоватьdiscoverUserInfoWithEmailAddress
, чтобы вытащить пользователя, с которым я зарегистрировался, на отдельном устройстве. Это возвращает нулевой пользовательский объект, но без ошибки.
Я не уверен, что мне здесь не хватает. Любые советы / советы по устранению неполадок будут высоко оценены.