Je tente de télécharger un document Word à partir du stockage Firebase. Sur le simulateur tout fonctionne comme prévu. Pourtant, sur mon appareil, je reçois l'erreur suivante:Téléchargement de fichiers de stockage Firebase Périphérique Problème
Optional(Error Domain=FIRStorageErrorDomain Code=-13000 "An unknown error occurred, please check the server response." UserInfo={object=26 October 2016.docx, bucket=app.appspot.com, NSLocalizedDescription=An unknown error occurred, please check the server response., ResponseErrorDomain=NSCocoaErrorDomain, NSFilePath=/tmp/bulletin, NSUnderlyingError=0x1702590b0 {Error Domain=NSPOSIXErrorDomain Code=1 "Operation not permitted"}, ResponseErrorCode=513})
Autres messages que je cherchais à ne semblent pas me donner une réponse de travail, et tout ce que je sais est qu'il ya un problème avec les permissions de fichiers, même bien que j'utilise le répertoire recommandé (tmp).
Ceci est le code pour télécharger le fichier
let Ref_Bulletin = Bulletin.referenceForURL("gs:/app.appspot.com/Bulletin/\(Today.stringFromDate(NSDate())).docx")
// Create local filesystem URL
let localURL: NSURL! = NSURL(string: "file:///tmp/today.docx")
// Download to the local filesystem
let downloadTask = Ref_Bulletin.writeToFile(localURL) { (URL, error) -> Void in
if (error != nil) {
print(error.debugDescription)
// Uh-oh, an error occurred!
} else {
print("Working As Expected")
self.Web_View.loadRequest(NSURLRequest(URL: localURL))
}
Alors, quelle est l'origine de ce problème et comment puis-je résoudre ce problème?
Mise à jour:
J'ai donc essayé de créer le répertoire, mais on me dit que je n'ai pas la permission, même si la documentation dit que je peux écrire sur le tmp.
Unable to create directory Error Domain=NSCocoaErrorDomain Code=513 "You don’t have permission to save the file “today.docx” in the folder “h”." UserInfo={NSFilePath=/tmp/h/today.docx, NSUnderlyingError=0x1702498a0 {Error Domain=NSPOSIXErrorDomain Code=1 "Operation not permitted"}}
C'est le code pour la création du répertoire:
do {
try NSFileManager.defaultManager().createDirectoryAtPath(localURL.path!, withIntermediateDirectories: true, attributes: nil)
} catch let error as NSError {
NSLog("Unable to create directory \(error.debugDescription)")
}
Possible duplication de [magasin Firebase: en essayant de stocker au fichier local donne une erreur] (http://stackoverflow.com/questions/37792882/firebase-store-trying-to-store-to-local-file-gives -an-error) –
On dirait que c'est un problème iOS: https://forums.developer.apple.com/thread/19844 –
@MikeMcDonald Mais la réponse que vous m'avez liée à dit que je peux écrire à tmp, j'ai mis à jour mon question. –