J'ai utilisé un conteneur iCloud sans problème pendant ma phase de développement. L'application conteneur avait jusqu'à présent un NSUbiquitousContainerName par défaut, utilisant le bundle if de l'application.
Maintenant, je voudrais avoir un nom plus convivial pour le dossier apparaissant dans iCloud Drive, j'ai donc remplacé la valeur NSUbiquitousContainerName par le nom de mon application.
FileManager.default.url(forUbiquityContainerIdentifier: nil)?.appendingPathComponent("Documents")
J'ai ensuite modifié le numéro de version et exécuté l'application. J'ai utilisé le dossier suivant pour exporter des documents:
<key>NSUbiquitousContainers</key> <dict> <key>container-id</key> <dict> <key>NSUbiquitousContainerIsDocumentScopePublic</key> <true/> <key>NSUbiquitousContainerName</key> <string>AppName</string> <key>NSUbiquitousContainerSupportedFolderLevels</key> <string>Any</string> </dict> </dict>
Et les documents sont toujours exportés vers l'ancien dossier, au lieu du nouveau. Que dois-je faire pour renommer le dossier du conteneur?
3 Réponses :
Si vous modifiez le nom du conteneur, vous devez augmenter le numéro de build.
J'ai eu le même problème avec iOS 13. Il semble que l'ancien nom de dossier soit mis en cache (tout comme l'image de l'icône de l'application utilisée comme superposition sur l'icône du dossier iCloud).
La modification de NSUbiquitousContainerName dans le plist n'a pas eu d'impact lors de l'utilisation d'un compte iCloud que j'avais déjà utilisé avec l'ancien nom de conteneur, mais j'ai obtenu le nouveau nom de dossier (et une nouvelle icône d'application) lors de l'utilisation avec un compte iCloud qui n'avait jamais été connecté à l'application auparavant.
Cette mise en cache persistait même lors de l'exécution de l'application sur un nouvel appareil et de la suppression de l'ancien dossier d'iCloud.
Bienvenue, @Mike Kaufman sur StackOverflow, merci beaucoup d'avoir fourni des informations. Cependant, votre réponse ne résout pas le problème. Ce serait formidable si vous postez une réponse. Pour plus de détails, visitez stackoverflow.com/help/how-to-answer .