Мое тестирующее приложение (MacOS) может хранить и загружать файлы в iCloud.
Код для сохранения файла выглядит так:
let containerURL = FileManager.default.url(forUbiquityContainerIdentifier: nil)
let documentDirectoryURL = containerURL!.appendingPathComponent("Documents")
let documentURL = documentDirectoryURL.appendingPathComponent("test.txt")
do {
try inhalt.write(to: documentURL, atomically:true, encoding:String.Encoding.utf8)
print(documentURL)
}
catch {
print("error")
}
}
Загрузка работает аналогично. Я могу запустить это приложение для тестирования на другом Mac, и оно также работает.
Теперь я попытался написать тестовое приложение IOS.
Я работал в основном с тем же кодом.
В разделе «Возможности» я выбрал «указать пользовательские контейнеры» и выбрал тот же, что и в приложении MacOS.
В info.plist я добавил этот код на IOS и MacOS
<key>NSUbiquitousContainers</key>
<dict>
<key>iCloud.AS.Test</key>
<dict>
<key>NSUbiquitousContainerIsDocumentScopePublic</key>
<true/>
<key>NSUbiquitousContainerName</key>
<string>TestData</string>
<key>NSUbiquitousContainerSupportedFolderLevels</key>
<string>Any</string>
</dict>
</dict>
Приложение IOS не может загрузить файлы, сохраненные приложением MacOS, и мне интересно, почему?
Я также не понимаю, почему я не могу скопировать файлы в папку iCloud на моем Mac вне XCode. Как это разрешить?