2017-08-03 11 views
0

にインポートされた後、私はSafariの上のユーザーがファイルをダウンロードし、「MYAPPとインポート」を選択した更新 - それはアプリ

時に付与されたファイルを保存したいiOSアプリを持っているファイルを保存します

私のアプリはファイルをサポートしていると認識していますが、アプリケーションでファイルを開くことを選択すると、そのファイルは追加されません。

これに関する文書はあまりありませんし、少なくとも最近は何もありません。

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?, openURL Url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool { 

    let encrypteddata = NSData(contentsOf: Url as URL) 
    if(encrypteddata != nil){ 

     let fileManager = FileManager.default 
     let paths = (NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] as NSString).appendingPathComponent("test.ipa") 
     print(paths) 
     fileManager.createFile(atPath: paths as String, contents: encrypteddata as Data?, attributes: nil) 

    } 
return true 

} 

アップデート:ここでは、ファイルを保存する時、私の失敗した試みがある

ファイルがアプリケーションのサンドボックスコンテナ内の文書/受信トレイディレクトリに格納されているようです。どのようにすべてのファイルをリストし、その内容を読むことができますか?

+0

この委任方法はどこから来たのですか?これは 'UIApplicationDelegate'の一部ではありません。ところで、Swift 3では 'NSString'、' NSData'、 'NSURL'を使わないでください。 – vadian

答えて

0

あなたは

optional func application(_ application: UIApplication, open url: URL, 
    sourceApplication: String?, 
      annotation: Any) -> Bool 

方法からURLを取得したら、あなたはこのURLからファイルにアクセスすることができますまたはこれからすべてのファイルを一覧表示します

let documentsUrl = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first! 
do { 
    let directoryContents = try FileManager.default.contentsOfDirectory(at: documentsUrl, includingPropertiesForKeys: nil, options: []) 
    print(directoryContents) 
} catch let error as NSError { 
    print(error.localizedDescription) 
} 

を示す以下のようにあなたがFileManagerのからすべてのドキュメントを見つけることができますドキュメントディレクトリ。

関連する問題