2017-02-15 4 views
1

ファイルを共有アプリケーショングループに正常に移動する機能がありますが、そのファイルを削除する機能が動作していないようです。 fullpath2変数を出力すると、正しい場所が表示されますが、ファイルは削除されず、エラーは返されません。ここで共有アプリケーショングループからファイルを削除する

は私の関数である。ここでは

func getSharedFilePath(appGroup:String,sharedFilename:String)->URL? { 

if let directoryPath = FileManager().containerURL(forSecurityApplicationGroupIdentifier: appGroup) { 
    return directoryPath.appendingPathComponent(sharedFilename) 
} else { 
    return nil 
} 
} 


public func deleteFromSharedFile(sharedFilename: String, fileExtension: String)->String { 
let sharedFilename = "\(sharedFilename).\(fileExtension)" 
guard let url = getSharedFilePath(appGroup:applicationGroup,sharedFilename:sharedFilename) else { 
    return("Error getting shared file path") 
} 

// read file from file system to data variable 
let fileManager = FileManager.default 
do { 
    try fileManager.removeItem(atPath: (url.path)) 
    return("File Removed") 
} 
catch let error as NSError { 
    return("File Remove Failed - \(error)") 
} 
} 
+0

'url.absoluteString'が間違っています。あなたはその道を得る必要があります。 'try fileManager.removeItem(atPath:url.path)'です。 BTW absoluteStringはURLスキーム(この場合は 'file://')も返すので、あなたはそれを追加して次の行を削除します。 –

+0

@LeoDabus url.pathを使用しても動作しませんでした – Nate23VT

+0

実際のコードで質問を更新してください –

答えて

2

は私の絵文字アプリのいくつかのコードスニペットです。

正常に動作します。

func removeImage(itemName: String, fileExtension: String) { 
    let fileName:String = itemName + "." + fileExtension 
    let fileManager = FileManager.default 
    guard let groupURL = fileManager.containerURL(forSecurityApplicationGroupIdentifier: "group.io.XXXXXX.XXXX") else { 
     return 
    } 
    let storagePathUrl = groupURL.appendingPathComponent("image/" + fileName, isDirectory: false) 
    let storagePath = storagePathUrl.path 

    do { 
     if fileManager.fileExists(atPath: storagePath) { 
      try fileManager.removeItem(atPath: storagePath) 
     } 
    } catch let error as NSError { 
     print(error.debugDescription) 
    } 
} 

「画像」は、アプリケーショングループのサブフォルダの名前です。

ファイルをルートフォルダに直接保存する場合は、削除することができます。

お手伝いします。

関連する問題