基于什么,iOS应用程序切片的作品? 是否有任何代码或其他东西需要它?
我一直在研究iOS 9的function,并通过了应用程序细化的概念。
我已经从苹果文件中读取了应用程序切片(App thinning的一部分),他说:
“切片是为不同的目标设备创build和提供应用程序包变体的过程,一个变体只包含目标设备所需的可执行体系结构和资源,继续开发和上传完整版本的应用程序到iTunes Connect 。商店将根据您的应用程序支持的设备创build并提供不同的变体。图像资源根据其分辨率和设备系列进行分割。
因此,基于这一点,我可以理解,如果我将图像定义为@1x
@2x
@3x
,那么如果用户使用iPhone 6 plus,则只会下载@ 3x图像。 但是其他资源呢?
我需要为App slicing
编写任何代码吗? 除了图像之外,还有哪些其他方式可以使应用程序变薄?
我真的很想知道这些,在此先感谢!
应用程序切片不仅支持基于1x,2x和3x的图像,还支持金属,audio,雪碧地图等应用程序结构如下所示:
很明显,除了图像,OpenGL ES,金属,audio和处理器特定的代码都在应用程序包中。 在应用程序切片中,根据下载应用程序的设备select适当的资源。
唯一要做的就是使用资产目录 。 这里的东西是在资产目录中添加文件
按照苹果,切片是在正常的开发和分发工作stream程中执行的,其过程大致如下:
在Xcode中,指定目标设备并在资产目录中提供图像的多个分辨率。 您必须使用资产目录才能分割资源。
在模拟器或设备上构build并运行应用程序。 Xcode为选定的设备types构build了一个应用程序的变体,改善了debugging构build时间,并允许您在本地testing变体。
创build应用程序的存档并为目标设备本地导出变体。 testing您在目标设备上导出的所有变体,以及早发现configuration问题。
将应用上传到iTunes Connect。 商店从档案创build个人应用程序变体。 变体的数量取决于Xcode项目中指定的体系结构和资源。
在iTunes Connect中,将应用程序的预发布版本分发给指定的testing人员。 testing人员使用TestFlight在支持的设备上安装预发布版本。 TestFlight下载特定于用户设备的应用程序的变体。
注意:要在将应用分发给用户之前testing商店构build的变体,仅邀请内部testing人员(您的团队的iTunes Connect用户)并使用TestFlight下载变体。 如果您邀请外部testing人员(仅指定其电子邮件地址的用户),则外部testing人员必须等待Beta应用程序审核才能批准应用程序,然后才能下载变体。 在iTunes Connect中,释放应用程序。 用户在支持的设备上安装应用程序,商店应用程序下载特定于用户设备的应用程序的变体。
请阅读App Distribution Guide