CFURLCopyResourcePropertyForKey non è riuscita perché è passato URL alcun regime

Ho un programma che permette di salvare un file di iCloud e ha funzionato grande per iOS7, ma ora ho questo errore con iOS8 e non riesco a trovare la risposta su come risolvere il problema. Qualcun altro ha avuto questo problema? Tutte le idee sarebbe molto apprezzato.

L’Errore:
CFURLCopyResourcePropertyForKey non è riuscita perché è stato passato questo URL che non ha schema: /var/mobile/Containers/Data/Application/ASFHDDE3-B1BB-41D7-A47C-DCC328362W21/Documents/mypictostore.png

Riga di Codice che Genera l’Errore:
[fileManager setUbiquitous:SÌ itemAtURL:backupUrl destinationURL:[[ubiq URLByAppendingPathComponent:@”Documenti” isDirectory:true] URLByAppendingPathComponent:nomebackup] errore:&ilerrore];

URL:
destinationURL: file:///private/var/mobile/Library/Mobile%20Documents/ABC23455~il-MIO-Programma/
backupUrl: /var/mobile/Contenitori/Dati/Applicazioni/ASDFGEEW-B1BB—6FR6-A47C-DCCF21876D36/Documenti/mypic.png

Grazie,
Jon

  • Ho risolto aggiungendo file:/// per la parte anteriore della stringa url. Sto postando la soluzione in modo che altri possono trovare se stanno avendo lo stesso problema.
  • Provare a utilizzare [NSURL fileURLWithPath:<il-percorso-qui>]; invece
  • Ho avuto un problema simile a @Jon stavo tirando immagini gstatic.com che non ha alcun regime. Ho risolto aggiungendo una “http://” davanti alla stringa url.
InformationsquelleAutor Jon | 2014-09-27

 

4 Replies
  1. 65

    Per me questo problema è stato risolto aggiungendo

    file://

    a destra prima il percorso del file di indirizzo come questo:

    var filePath = "file://\(fileURLpath)"
    • Impressionante. Totalmente risolto il mio problema.
    • Grande!! Ha funzionato. Soluzione semplice (Y)
    • grande lavoro…..
  2. 17

    O forse è possibile utilizzare NSURL(fileURLWithPath: NSBundle.mainBundle().pathForResource("mypictostore", ofType: "png")!) invece di utilizzare NSURL(string: NSBundle.mainBundle().pathForResource("mypictostore", ofType: "png")!)

    • aggiungere “file:///” davanti al vostro percorso
    • Penso che fileURLWithPath è più appropriato.
    • fileURLWithPath lavorato
  3. 9

    Occhiata a questo link e Objective-c risposta: CFURLSetResourcePropertyForKey fallito quando disabilitare il backup dei dati su NSDocumentDirectory

    Anziani Swift versione risposta:

    var str:String = "/var/mobile/Containers/Data/Application/3039975A-5E05-4A4C-8000-55C681A7C35F/Documents/index.html"
    
    var url:URL = URL.init(fileURLWithPath: str)

    Swift 4 Risposta:

    var str:String = "/var/mobile/Containers/Data/Application/3039975A-5E05-4A4C-8000-55C681A7C35F/Documents/index.html"
    
    var url:URL = URL(string: str)!
    • grazie, ha funzionato.
  4. 5

    guarda, ho trovato questo,Il url è The location to write the data into. dobbiamo dire al sistema un file path.

    • var percorso = “file://(fileURLpath)”
    • var url:URL = URL.init(fileURLWithPath: fileURLpath)

    Dati

Lascia un commento