2015-03-20 5 views
3

В основном я хочу, чтобы файлы для хранения (например, pdf) из других приложений (например, dropbox) сохранялись и изменялись позже.Как получить имя файла для общего объекта в расширении общего доступа iOS

Я написал расширение для этой задачи и мог выполнять итерацию по NSExtensionItem и может вылавливать мои файлы, но я понятия не имею об их оригинальном имени файла.

Я заметил, что другие приложения получили имя файла - но они вызываются с помощью функции «открыть с» в iOS.

Так как я получаю имя файла в своем расширении share?

Заранее спасибо.

ответ

5

У вас есть имя файла как lastPathComponent в URL получил:

itemProvider!.first!.loadItemForTypeIdentifier(kUTTypeImage as String, options: nil, completionHandler: { 
     (provider, error) in 
     let url = provider as! NSURL 

     println(url) 

     let data = NSData(contentsOfURL: url) 

     let name = url.lastPathComponent! 

     ... 

     // Inform the host that we're done, so it un-blocks its UI. Note: Alternatively you could call super's -didSelectPost, which will similarly complete the extension context. 
     self.extensionContext!.completeRequestReturningItems([], completionHandler: nil) 
    }) 
Смежные вопросы