URLSession缓存数据

时间:2016-10-06 18:26:06

标签: ios objective-c swift

我是iOS开发人员的新手,我不明白其中的想法。所以我有gz文件,在gzip里面有xml文件。每次用户启动应用程序时,我都需要下载gz文件。我第一次启动应用程序时使用此代码来获取数据。问题是我的xml文件在服务器上脱机了几天,我的应用程序始终没有问题地启动并显示数据没有问题。所以我的所有文件都缓存在设备上?我希望每次用户启动应用程序时都会检索我的数据。我不确定我做错了什么?感谢

    let url = NSURL(string: "http://sitename/xxx.gz")

    if url != nil {
        let task = URLSession.shared.dataTask(with: url! as URL, completionHandler: { (data, response, error) -> Void in

            if error == nil {

                let nsdata = data as NSData?
                let content = nsdata?.gunzipped()
                let dataContent = content as Data?

                let urlContent = NSString(data: dataContent!, encoding: String.Encoding.ascii.rawValue) as NSString!

                let xml = XMLParser()
                xml.getDataforTable(data: urlContent as! String)

                 NotificationCenter.default.post(Notification(name: Notification.Name(rawValue: "XmlDataLoaded"), object: nil))

            } else {
                NotificationCenter.default.post(Notification(name: Notification.Name(rawValue: "DataNotLoaded"), object: nil))
            }
        })
        task.resume()
    }

1 个答案:

答案 0 :(得分:0)

{{1}}

在AppDelegate.swift

func application(application:UIApplication,didFinishLaunchingWithOptions launchOptions:[NSObject:AnyObject]?) - >布尔{

在此方法中调用您的Web服务方法

}