我的iPhone应用程序加载速度非常慢
我正在开发一款iPhone应用程序。我使用touchJSON解析返回Json数据的PHPWeb服务。在按钮的单击事件中调用web服务 web服务在近10秒内被解析,但响应速度非常慢 解析响应后,必须立即推送新视图 响应在近10秒内被解析,但移动到下一个视图需要一分钟 我需要尽快解决这个问题 有人能帮我吗我的iPhone应用程序加载速度非常慢,iphone,ios,json,Iphone,Ios,Json,我正在开发一款iPhone应用程序。我使用touchJSON解析返回Json数据的PHPWeb服务。在按钮的单击事件中调用web服务 web服务在近10秒内被解析,但响应速度非常慢 解析响应后,必须立即推送新视图 响应在近10秒内被解析,但移动到下一个视图需要一分钟 我需要尽快解决这个问题 有人能帮我吗 提前谢谢 作为基本思想,您使用多线程吗?您应该实现这样的功能 dispatch_queue_t myqueue = dispatch_queue_create("queue", NULL); d
提前谢谢 作为基本思想,您使用多线程吗?您应该实现这样的功能
dispatch_queue_t myqueue = dispatch_queue_create("queue", NULL);
dispatch_async(myqueue, ^{
//load your Json data here ex [dataManager loadData];
dispatch_async(dispatch_get_main_queue(), ^{
//post a notification here for the table/view controller that needs to reload data
});
});
现在,您甚至可以在调用此块之前推送到新的viewcontroller,并为重新加载数据的通知添加观察者。segue将是即时的,您的数据将在10秒后可用。如果您不需要支持iOS 5之前的任何内容,您甚至不需要任何第三方库来解析JSON。您可以这样做:
NSError *jsonError = nil;
NSDictionary *response = [NSJSONSerialization JSONObjectWithData:[responseString dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingMutableLeaves error:&jsonError];
if ( response )
{
NSString *exampleValue = [response objectForKey:@"exampleKey"];
[self.navigationController pushViewController:yourViewController animated:YES];
}
此外,正如卡林所指出的,如果要处理大量数据,最好在单独的线程上处理。您是否在Instruments中分析了应用程序?