Я использую 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()