首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >iOS应用程序开发-使用JSON下载大型内容

iOS应用程序开发-使用JSON下载大型内容
EN

Stack Overflow用户
提问于 2013-07-27 17:53:00
回答 1查看 373关注 0票数 0

我们有一个通用的iOS应用程序。在第一次发布时,我们使用JSON将内容下载到应用程序中。

在iPad (由于图像大小较大)和iPhone (较小图像)上下载的内容的大小约为100 is。

通过WiFi下载所有内容大约需要4-7分钟。在3G上,它需要7-10分钟。

图像大小大,文本内容不多。

有没有办法缩短下载时间?我知道JSON压缩,但不确定它是否对图像有帮助?

有什么想法吗?

发送

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-27 21:52:37

在各种评论中都提到了其中的一些信息,但这也是我会提出的建议,我认为写出一个答案会更有用,下面是这样:

  1. 与其将每个映像存储在JSON文件中并一次下载它们,不如将图像存储在zip文件中并下载它们。无论从这里获得多少压缩,都是对下载时间的改进,一旦下载了zip文件,您就可以简单地解压缩图像。
  2. 将合理数量的图像与应用程序一起存储在主包中。在你的例子中,你显然不能把它们全部存储在那里;你不想有一个庞大的应用程序,而且因为它是一个食谱应用,我想你会在你的过程中添加更多的菜谱。能够通过JSON更新和下载菜谱比每次更改时将应用程序的新版本推送到应用程序商店更有意义。但是有一些项目可以与应用程序捆绑在一起;例如。大背景图像,设计元素是不变的,不可能改变。任何可能不需要更新的图片都应该与主应用程序捆绑在一起;下载时间的任何节省都是一个改进。
  3. 有一些有趣的加载屏幕。这是非常重要的,因为你说的是4-10分钟的下载时间。对于用户来说,这是一段很长的时间。当使用应用程序时,30秒甚至看起来很长。你将很难让我愿意坐在那里等待10分钟的应用程序开始,如果在这段时间内什么都没有发生。有创意的蔬菜人物在屏幕上移动,包括一个小小的互动拼图或在加载屏幕上的成分,什么的。在用户等待的时候,只需给他们一些可以查看的东西(或者最好是一些交互式的东西)。否则,在此下载过程中,您可能会失去许多用户。
  4. 如果你能做到这一点,这真的是一个好主意,只下载项目时,必要。例如,如果您的食谱应用程序被分解为“沙拉”、“鱼”、“鸡”、“甜点”等,您可以在用户第一次点击时提示用户下载每个类别的食谱信息。最重要的是,它打破了用户等待下载的时间;假设你有10个菜谱类别,现在用户必须一次等待的时间从4-10分钟减少到30秒-1分钟。这是一个巨大的不同。我会等待1分钟的甜点食谱(仍然给他们一些事情做!)比我等待整个应用程序的10分钟要容易得多。 4b。您提到在脱机时不能访问新内容,这是一个有效的考虑。为了解决这个问题,您可以在应用程序第一次加载时使用提示符:This application contains hundreds of exciting recipes and delicious images. It can take several minutes to download all this yummy information. You can download all the content now, or proceed to the app and download recipes by category when you wish to view them. Please note that this will require an internet connection.和按钮可以显示类似于Download NowProceed to App的内容。很明显,你可以按照自己的心愿来玩这句话,但这个想法是正确的。您已经通知用户,下载时间可能很长,所以至少会预先警告他们,他们可以自己决定如何使用您的应用程序。
  5. 然而,您决定继续,将下载的内容分解为压缩文件的逻辑类别。例如,"Desserts.zip“、"Salads.zip”等等。这样,即使您现在不决定让用户按需下载,您也已经设置了一个可供以后更改的结构。
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17900802

复制
相关文章

相似问题

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