Cuando está en el modo de avión o en cualquier otro estado donde el acceso a la red no está disponible, llamará a NSFileManager URLForUbiquityContainerIdentifier:
return nil?¿URLForUbiquityContainerIdentifier: devuelve nil cuando el acceso a la red no está disponible?
Una pregunta de seguimiento a esto es: si esta llamada a URLForUbiquityContainerIdentifier:
no devuelve nada, sino más bien devuelve una URL válida cuando el acceso a la red no está disponible esta es una manera de acceder a los documentos basados en la nube fuera de línea?
Los documentos de apple indican que esto devolverá nil si iCloud no está configurado o no está habilitado. No menciona lo que sucederá si el acceso a la red no está disponible.
Lo probaría yo mismo, pero por lo que entiendo, tendría que probar esto en un dispositivo real y no es posible hacer pruebas en un dispositivo en este momento. ¡Gracias!
¡Gracias! He estado tratando de entender esto durante días (lo cual no estoy feliz de admitir jaja). Creo que mi confusión se basaba en el hecho de que pensaba que ubiquityContainer era una ubicación en la nube y no un contenedor de almacenamiento local. Este era un concepto fundamental que no estaba comprendiendo. ¡Gracias de nuevo! –
Claro, en realidad acabo de responder otro en UbiquityContainers de iCloud. Debo mencionar que NSFileManager puede estar bloqueando y se recomienda su ejecución en una cola diferente. Echa un vistazo a esta respuesta: http://stackoverflow.com/questions/9050359/should-urlforubiquitycontaineridentifier-be-called-in-a-thread-outside-the-main/9051105#9051105 – MobileOverlord
Buen punto sobre el bloqueo - es gracioso, porque Si observa los documentos de ejemplo de Apple o el código del sitio web al que hizo referencia anteriormente, las llamadas a URLForUbiquityContainerIdentifier se encuentran en el hilo principal. Pensarías que Apple tomaría nota de esto si fuera un problema potencial, ¿no? –