Я пытаюсь реализовать синхронизацию iCloudдля приложения Cocoa, которое уже работает и синхронизирует приложения iOS. Поскольку у меня есть проблема в этом приложении Cocoa, я решил попробовать пример приложения Ensembles.Получение ансамблей Идиоматическое приложение OSX для синхронизации с iCloud
Итак, я пытаюсь получить приложение Idiomatic для OSX для синхронизации через iCloud. Но я всегда получаю ту же ошибку, что я не вошел в ICloud, потому что
[fileManager URLForUbiquityContainerIdentifier:ubiquityContainerIdentifier]
всегда возвращает nil
для меня.
Я вошел в систему iCloud на своем Macbook и синхронизирую, например, DayOne отлично работает между iPhone и MacBook. Таким образом, не войти в систему не может быть проблемой. Вопрос в том, почему FileManager
не возвращает идентификатор?
Я прошу вас об этом в течение трех дней, и он работал уже какое-то время и сломался из-за «я не знаю». Я восстановил мою папку ~/Library
от TimeMachine, а затем снова работал, но снова сломался. Затем я создал нового пользователя ОС и использовал другой Apple-ID для iCloud, он работал некоторое время и снова разбился.
Я действительно немного растерялся, не уверен, если это что-то делать, с помощью Подписи, Песочницы, Провизии ... или что-то еще.
Итак, что я сделал?
Я открыл проект Ensembles 1.4 Idiomatic
, На Target-General
-Tab я изменил BundleIdentifier
, я включил MacAppStore Signing
и я выбрал нашу DevTeam
.
На Capabilities
-Tab я позволил AppSandbox
и iCloud Capabilities
, указанных пользовательских контейнеров и выбрал только что созданный контейнер ICloud,
На BuildSettings
-Tab я выбрал Mac Developer
CodeSigningIdentity и MacTeamProvisioningProfile
для нашего BundleID. (Я бы просто опубликовал скриншоты, но для этого недостаточно очков репутации.)
Кроме того, отключение возможности песочницы не помогает.
Есть ли у кого-нибудь идея, или знает, что мне не хватает? Любые «волшебные» папки в ~/Library
, которые необходимо удалить? Вход и выход из iCloud? Удаление контейнера на серверах iCloud? Или мне нужно полностью новое начать App-Id-Certificate
- ProvisioningProfile
-hassle, чтобы решить эту проблему?
Возможно, мои учетные записи iCloud были повреждены?
Любая помощь приветствуется, заранее за это спасибо.
Не знаете, в чем проблема. Звучит как более общая проблема iCloud, а не только для ансамблей. Я думаю, вы уверены, что проблема вызвана методом URL, возвращающим 'nil', правильно? Или это возможно ложное предположение? –
Да, я совершенно уверен. Я отлаживал его, и возвращался UbiquityID, но для возвращаемого контейнера nil. И ДА, Я тоже думаю, что это НЕ проблема ансамблей, потому что Ensembles отлично работает для приложений iOS. Но я надеялся, вас спросили такое, что часто, что вы могли бы сказать: Да, для Idiomatic-Mac-App вы наверняка забыли xxx или yyy! – Bernd
Я полагаю, что в настройках iCloud Drive для приложения было разрешено использовать диск, верно? Я думаю, что пользователь может отключить это для каждого приложения. Уверены ли вы изменить идентификатор контейнера iCloud и настроить этот контейнер на сайте Apple? –