iOS减少应用商店更新中二进制文件的大小

iOS减少应用商店更新中二进制文件的大小,ios,iphone,xcode,Ios,Iphone,Xcode,我有一个应用程序当前在应用程序商店中。 它拥有运行所需的大约500mb数据 在应用程序下载后,我一直在努力尝试各种方法来安装这些数据,包括,但没有用。。。最后期限很快就要到了,所以我决定把内容打包到应用程序包中,以后再担心。这意味着应用程序的大小决定了人们在WiFi上下载它,但是。。。不管怎样 现在,我发现,让我非常高兴的是,它做了我所需要的、其他人做不到的所有事情(看看这个问题) 所以。。。我准备向应用商店推送一个新的更新,我的存档大小已从491.2mb减少到32.2mb(!!?呜呜?!!)

我有一个应用程序当前在应用程序商店中。 它拥有运行所需的大约500mb数据

在应用程序下载后,我一直在努力尝试各种方法来安装这些数据,包括,但没有用。。。最后期限很快就要到了,所以我决定把内容打包到应用程序包中,以后再担心。这意味着应用程序的大小决定了人们在WiFi上下载它,但是。。。不管怎样

现在,我发现,让我非常高兴的是,它做了我所需要的、其他人做不到的所有事情(看看这个问题)

所以。。。我准备向应用商店推送一个新的更新,我的存档大小已从491.2mb减少到32.2mb(!!?呜呜?!!)

我很好奇苹果是如何做到这一点的。我曾经读过这篇文章,其中提到了他们通过检测未改变的内容来降低应用程序包大小的技术,但没有明确提到我所面临的场景

现在,如果460mb左右的过时包/代码将存储在用户的设备中,我希望能够向他们建议,他们完全删除应用程序并重新安装。。。但我很好奇我/他们是否需要这样做,或者有人知道苹果将如何处理这种情况吗


谢谢。

您参考的文档介绍了苹果如何优化应用程序更新的大小。但其净效果与用户设备上的应用程序包被完全替换的情况相同。正如该文件所说:

除了新内容外,更新包还包含如何将应用程序的先前版本转换为应用程序的新版本的说明。作为转换的一部分,将添加新文件,将用更新的副本替换修改的文件,并删除删除的文件。就开发者和用户而言,这个过程是完全透明的,更新后的应用程序与完整下载相应更新版本的应用程序是无法区分的


因此,不必告诉用户删除旧应用程序,除非永久存储中有任何需要重置的内容(文档、
NSUserDefaults
等)。无论如何,你可能应该通过编程来处理这个问题。

恭喜你缩小了应用程序的大小。你的新设计听起来好多了。用户无需删除并重新安装您的应用程序。App Store diff软件包将删除此内容(除非您以编程方式将其复制到持久化的目录中,如文档)。好的,原始内容刚刚复制到应用程序包中。新内容-当前-在Documents目录中,但不是全局内容,它在应用程序沙盒中…因此,继续,由于内容已复制到Documents文件夹中,如果我删除应用程序并重新安装,我应该会看到文件吗?因为我没有看到那种行为。。。(我在/Documents中查询我制作的自定义目录,并在开始下载之前测试我是否拥有所有的内容片段)@jesses.co.tt底线,捆绑包被有效地替换了。“文档”文件夹没有更改。我只想确保:当用户首次加载应用程序时,您没有尝试下载大量数据,是吗?据称,苹果拒绝了用户首次启动手机应用程序时通过手机下载过多数据的应用程序。如果您以及时的方式或在他们允许的情况下下载数据,您就可以了。但如果你尝试(通过手机)进行批量下载,你可能会违反苹果公司的内部准则。(我必须承认,我从来没有看到过这个应用程序下载限制被记录在案,但只是一些关于应用程序因使用太多手机带宽而被拒绝的老故事。)好吧,第一次通过时没有注意到这个措辞。。。谢谢。来自声誉低于8万的人的无耻插拔-我很想看到一些对一个负责任的问题的投票!;-)