URLSession - не работает после того, как приложение было в фоновом режиме (Swift 4.2) - PullRequest
0 голосов
/ 10 марта 2019

Я использую URLSession (Swift 4.2) для создания списка файлов в удаленном каталоге. Он работает идеально каждый раз, за ​​исключением случаев, когда приложение не использовалось в течение длительного периода времени (например, более 30 минут), или оно было в фоновом режиме, а затем выходит на передний план. Нажатие на кнопку, которая вызывает код во второй раз, всегда работает ... странно! Вот код, я что-то не так делаю? Нужно ли что-то "просыпаться", если приложение было в фоновом режиме?

    //START URL SESSION
    URLSession.shared.dataTask(with: NSURL(string: gcDIR)! as URL, completionHandler: { (data, response, error) -> Void in

        //ERROR MEANS IMAGE NOT FOUND, ADD TO THE CACHE
        if error != nil {
            print("error: no files found")
            //return
        } else {

            //GET THE DATA
            if let data = data, let results = NSString(data: data, encoding: String.Encoding.ascii.rawValue)
            {
                let lines = results.components(separatedBy: "\n")
                for line in lines
                {
                    let fields = line.components(separatedBy: " ")
                    for field in fields {
                        if field.contains(".png") {
                            gMaster.append(field)
                        }
                    }
                }
            }
        }

    }).resume()
...