首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何提高iOS应用程序的性能?

如何提高iOS应用程序的性能?
EN

Stack Overflow用户
提问于 2012-10-29 13:04:47
回答 2查看 1.6K关注 0票数 0

我开发了一个在iPhone-3GS,iPhone-4,iPhone-4S上工作的应用程序。

启动过程中,iPhone4s需要30秒,iPhone-3GS需要50-55秒。在同一网络上进行测试。(这不是一个与网络或互联网有关的问题;在模拟器中只花了5秒.)

在这个启动过程中,应用程序执行几个操作,如从数据库删除旧数据、WebService调用和将响应数据插入数据库。应用程序使用方法(顺序)在主线程上调用几乎8个web服务。

我使用SQLite和编译的查询结构进行插入。我想提高应用程序的性能,并希望减少应用程序所占用的启动时间。

Android团队使用相同的后端,他们也在做同样的事情。在Galaxy上只需20秒,(Team正在使用对象关系模式与Sqlite通信)。

这就是提高性能的原因吗?

是否有与Java中的ORM相同的对象-C来提高性能,同时处理Sqlite (处理器特有的,更少的时间消耗)?

EN

回答 2

Stack Overflow用户

发布于 2012-10-29 13:11:38

首先,您不应该在主线程上执行网络操作(web服务调用)。这应该在后台线程上完成。我对直接使用SQLite还不太了解,但是使用CoreData,您可以在后台线程上进行“数据库”更新,只需使用主线程来合并两个ManagedObjectContexts

我设想将WS调用迁移到后台线程(AFNetworking是一个很好的框架,顺便说一句),您将看到很多改进。

我举的一个例子是一个基于web服务的应用程序,它从一个Server中获取7000条记录,并创建一个NSArray (数据以JSON形式进入),这个过程需要7-10秒。通过同时执行自动身份验证过程,我进一步减少了对用户的影响。

30秒太长了,不能让用户等待某件事情。

票数 1
EN

Stack Overflow用户

发布于 2015-01-03 15:32:22

14最好的提示可在这里获得提高iOS应用程序性能的最佳步骤

在本教程中,第13点给出了您所需的信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13122249

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档