2014-10-10 15 views
9

Próbuję używać dokumentów iCloud do przechowywania plików XML z mojej aplikacji na iOS. Wszystko wydaje się działać dobrze (mogę pisać i czytać pliki bez błędów), z tym że moje pliki aplikacji nie pojawiają się w dokumentach iCloud ani w icloud.com, ani w developer.icloud.com ani na moim komputerze z Windows w folderze iCloud Drive. Uruchomiłem aplikację na symulatorze i przetestowałem z TestFlight na prawdziwym urządzeniu. Mam zainstalowaną najnowszą wersję iCloud dla Windows 4.0. Aplikacja jest tworzona w Xcode 6.Dokumenty iCloud niewidoczne

Czy ktoś wie, jak sprawić, aby pliki pojawiły się w dokumentach iCloud?

Kod używam na zapisanie pliku:

NSLog(@"Syncing with iCloud"); 
    NSURL *ubiq = [filemgr URLForUbiquityContainerIdentifier:nil]; 
    if (ubiq) { 
     NSURL *ubiquitousPackage = [ubiq URLByAppendingPathComponent:@"Documents" isDirectory:YES]; 
     if ([filemgr fileExistsAtPath:[ubiquitousPackage path]] == NO) 
      [filemgr createDirectoryAtURL:ubiquitousPackage 
       withIntermediateDirectories:YES 
           attributes:nil 
            error:nil]; 

     ubiquitousPackage = [ubiquitousPackage URLByAppendingPathComponent:@"data.pxa"]; 

     DataFile *file = [[DataFile alloc] initWithFileURL:ubiquitousPackage]; 
     file.xmlContent = doc.XMLString; 
     [file saveToURL:[file fileURL] forSaveOperation:UIDocumentSaveForCreating | UIDocumentSaveForOverwriting completionHandler:^(BOOL success) { 

      if (success) { 
       NSLog(@"Synced with iCloud: %@", [ubiquitousPackage path]); 

      } else { 
       NSLog(@"Syncing with iCloud failed"); 
      } 
     }]; 
    } else { 
     NSLog(@"iCloud not available"); 
    } 
+0

FWIW, nie zawracam sobie głowy tworzeniem katalogu kontenerów i działa dobrze. – Taylor

+1

Upewnij się, że podniosłeś swoją wersję i numer kompilacji, aby zmiany w pliku info.plist zaczęły obowiązywać. –

Odpowiedz

2

I postępuj zgodnie z instrukcjami w tym link aby zobaczyć pliki utworzone przez mój aplikacji w iCloudDrive. Widzę plik z ustawień> iCloud> Pamięć masowa z urządzenia. Mam nadzieję, że to pomoże.

1

Dowiedziałem się, na czym polegał problem: Klucz w Info.plist dla kontenera iCloud był nieco inny niż format "iCloud.com.example.MyApp".