我正在处理其中一个应用的共享扩展程序。我想将所选文件(任何文档)上传到服务器,我有端点,它使用当前的Chrome应用程序。当我启动dataTask时,它返回
func URLSession(session: NSURLSession, task: NSURLSessionTask, didCompleteWithError error: NSError?)
错误NSURLErrorDomain Code=-1005 "The network connection was lost."
我已经像这样配置了NSURLSession
:
let config = NSURLSessionConfiguration.backgroundSessionConfigurationWithIdentifier("group.myidentifier.background")
config.sharedContainerIdentifier = "group.myidentifier"
let session = NSURLSession(configuration: config, delegate: self, delegateQueue: NSOperationQueue.mainQueue())
let request = self.createRequest(id: randomID, name: fileName, type: mime!, file: NSData(contentsOfURL: fileURL)!, filename: fileName, mimetype: mime!)
let task = session.dataTaskWithRequest(request)
task.resume()
createRequest
方法创建要发布的表单。
我不会在上传开始时关闭扩展程序,也尝试使用Alamofire,但这两种情况都没有。
欢迎任何建议,谢谢!
答案 0 :(得分:0)
你可以查看这些教程。
https://www.shinobicontrols.com/blog/ios8-day-by-day-day-2-sharing-extension http://www.appcoda.com/ios8-share-extension-swift/
我认为你的delegateQueue应该是nil。