2015-06-22 2 views
0

Недавно я обновил свое устройство до iOS 8.3 с 8.1. мое приложение отлично работало на устройстве, когда оно было настроено на версию 8.1, но теперь после обновления он просто замораживается.Мое приложение заморозилось после обновления моего устройства до iOS 8.3

Я отлаживал и выяснял, когда и почему он замерзает. У меня есть 5 массивов емкостью 50, каждая из которых содержит строки, полученные из разных мест (ble, gps, video). , когда NSArray достигает его емкости. Я записываю все в файл и удаляю все объекты из NSArray. У меня есть UIButton, что когда он нажимается, я начинаю собирать данные до NSArray и записывать их в файлы -> Вот когда он замерзает!

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *documentsDirectory = [paths objectAtIndex:0]; 
NSString *filePath = [documentsDirectory stringByAppendingPathComponent:fileName]; 

//check if file exisits, if not creates one. 
if(![[NSFileManager defaultManager]fileExistsAtPath:filePath]) 
{ 

    [[NSFileManager defaultManager] createFileAtPath:filePath contents:nil attributes:nil]; 
} 
//writes and adds data the content to the specifec file. 
NSFileHandle *fileHandler = [NSFileHandle fileHandleForUpdatingAtPath:filePath]; 
[fileHandler seekToEndOfFile]; 
[fileHandler writeData:[content dataUsingEncoding:NSUTF8StringEncoding]]; 
[fileHandler closeFile]; 

Любые идеи, почему обновление версии устройства влияет на мое приложение?

EDIT: Консольный журнал, похоже, все еще работает (у меня он печатает, в какой функции он находится на данный момент), хотя устройство заморожено.

+0

Что говорит журнал консоли? – Raptor

+0

Вы пробовали его на симуляторе под управлением iOS 8.3? – LinusGeffarth

+0

отключить «Переключить глобальное состояние точки останова», а затем попытаться выполнить, если генерируется какая-либо «точка останова исключения». –

ответ

2

Как сказал Ашвин, я переместил свою деятельность на фоновый поток, и он отлично работает!