我有一个iPad应用程序,在beta测试期间可能需要一个小的代码更新,但有大量的图形资产(300MB +)。
有没有办法创建一个只有更改的部分.ipa文件,而不是每次都重新安装整个应用程序和图形文件?
简答:不!
说明:
Apple没有办法让你这样做!
.ipa只是一个.zip文件。所以在第一眼看来,你可以做到。
但是有两个问题
不,你在想什么会被认为是一个“补丁”。 Apple强制您更新整个应用程序包。以Tomtom应用程序为例。该应用程序大约1.5GB左右,因此对于小的微小更改,他们需要重新上载整个1.5GB的捆绑包。
对于App Store版本,自iOS6和iOS 7.1以来情况发生了变化:
从iOS 6开始,应用程序商店将自动为提交到商店的所有新版本的应用程序生成更新包。生成更新包时,应用商店会将您应用的一个或多个先前版本与新版本进行比较,并为每个版本创建一个优化包,其中仅包含应用版本之间已更改的内容,不包括任何未更改的内容。此比较查看应用程序包中的所有内容,包括应用程序可执行文件,nib,本地化,图像文件,视频文件,音频文件,文本文件以及包含自定义格式数据的文件。
对于运行iOS 6.x和iOS 7.0的设备,更新包将包含在新版本的应用程序中已更改的任何文件。例如,如果您的应用程序中有10 MB文件,并且只在新版本的应用程序中更改该文件中的1 KB内容,则该新版本的更新包将包含完整的10 MB文件。
对于运行iOS 7.1及更高版本的设备,更新包可能仅包含已更改文件的旧版本和新版本之间的差异,而不是完整文件。在只有一小部分大文件发生更改的情况下,这可能会显着减小更新包的大小,但会增加更新在设备上的安装时间。因此,即使是iOS 7.1及更高版本的更新,上述两个提示仍然很重要。最小化已更改的内容并将其本地化为许多较小的文件而不是一个较大的单片文件将减少所有情况下的下载大小,并将加速在运行iOS 7.1及更高版本的设备上的安装。
资料来源:https://developer.apple.com/library/archive/qa/qa1779/_index.html