【发布时间】:2017-01-04 09:19:09
【问题描述】:
我正在开发一个购物应用程序,我在其中使用网络服务来获取数据,例如产品列表等。但是加载时间太长,因此我的应用程序真的很慢。
有没有办法解决这个问题?
以下是我尝试获取产品列表的代码。
NSURL * Url=[NSURL URLWithString:@"URL/api/product"];
NSData * Data=[NSData dataWithContentsOfURL:Url];
NSString *str=[[NSString alloc]initWithData:Data encoding:NSUTF8StringEncoding];
NSDictionary *jsonDict = [NSJSONSerialization JSONObjectWithData:[strinng dataUsingEncoding:NSUTF8StringEncoding] options:NSJSONReadingMutableContainers error:nil];
无法放入 JSON 响应,因为它太多了。
【问题讨论】:
-
是你的后端吗?您可以更改任何请求/响应吗?
-
请尝试使用AFNetworking,并在ViewWillAppear中发送请求
-
在单独的线程中缓存/预取/下载是良好网络性能的关键。
-
太慢了,为什么?你正在使用,我希望异步调用?你有良好的联系吗?您不是同时要求太多数据吗?解析是否花费了太多时间?您的服务器是否占用了太多时间?
-
在主线程中使用同步请求会阻塞 UI,我希望你知道,因为这显然是你的问题。
标签: ios objective-c json