Hi 我的个人项目扫雷Elic 无尽天梯梦见账本
类别
游戏
财务
Elic
Umemi
前言
软件瘦身是个老生常谈的议题。苹果其实对于软件瘦身也有着自己的一些计划 。本文就将结合官方文档进行阐述 。
一 、 什么是软件瘦身 ?
在 iOS, tvOS, 上 和流程平台根据读者终端和流程平台的性能对App进行裁剪优化。这个优化的蓝莓外汇平台流程就是 软件瘦身 。
二、 剪切 (iOS, tvOS)
是针对不同终端不同平台创建安排变体软件包的流程 。每个变体只涵盖当前终端和流程平台所需要的资源和可落实资料。你只需要打包提交完整平台的软件到 。 将会根据不同的终端及流程平台平台创建分发不同的变体。
用 asset 储存图像资源以便 为不同的变体选择资源启动 。当读者安装软件时,蓝莓MT4交平台台将会获取安装一个针对其终端平台平台的变体。
Xcode 将会在本地 build 和 run 的时候模拟进行 。当你 的时候 Xcode 将会涵盖所有构建平台并允许你导出变体包。
下图很好的演示了这个流程
思考
这里提到 asset 会根据架构不同进行资源启动 ,所以我们平时不要把资源直接放到 中 ,而跳过了这个优化的流程。
三 、
是编译器的一层间接 。你提交到 的进入了的 App 将会在 被 编译 和 连接。涵盖了 将会使Apple 可以在将来再优化你的蓝莓外汇平台软件包而不用再再次提交。
对于 iOS 软件 是默认非必须选的 。 和 tvOS 是必选的。如果想要拥护 那么你所有用到的库都要拥护 。
符号表
Xcode 默认会隐藏你的软件的符号表 ,所以对于 Apple 它是不可见的。当你提交你的 App 到 的时候你可以选择涵盖符号表``。涵盖符号表会使Apple 为你供给崩溃日志 。
如果你想要自己整理崩溃日志 ,那么你可以不提交符号表。你可以在发布软件后获取 编译后的符号表。
四、 ODR: On- (iOS, tvOS)
这些资源主要是图像和声音。 将其保存运维在苹果的服务器 。 将会按需利用资源优化变体包。后面将以 ODR 进行简称 。
ODR 供给了更好的读者体验:
4.1 利用须知
App 主管请求这些资源,流程平台主管 获取 和 存储。软件利用资源,然后请求 。获取后 ,资源可能会通过多个开展周期保留在终端上,使访问速度更快 。
资源可以是 拥护的任何类别的资源,但 可落实程序 除外 。Table 1-1 呈现拥护按需资源类别,并指示这些类别是否以 资料 或 Asset 涵盖在项目中。
Table 1-1: On- types
Data file
✓
✓
Image
✓
✓
✓
✓
scene
✓
atlas
✓
✓
Apple TV Image Stack
✓
✓
数据资料可以涵盖任何类别的数据 ,但可落实的XM外汇开户 Swift 、 -C 、 C 或 C++ 代码除外 。脚本语言生成的资料 可以是按需启动的。
4.2 ODR 的好处软件资源懒启动 。远程存储很少利用的资源 。软件内购买资源的远程存储 。五、 ODR 标签的工作原理
通过分配 一个或多个标签 来识别开发流程中的按需启动资源 。标签 是您创建的字符串标识符。您可以利用 标签的名称 来识别软件中如何利用涵盖的资源。例如 在游戏中 ,利用标记 level-5 来应对与 level-5 有关的每个资源。
当流程平台需要更多存储时5.1 游戏举例
继续利用游戏示例,在分为多个级别的游戏中,读者只需要与读者目前玩的水平和下一个可能级别有关的资源。
下图呈现一个软件,其中涵盖所有级别的所有资源。
通过为不同级别以及不需要涵盖在软件中的其他共享资源创建标签 ,可以缩小软件包的大小 。
下图呈现了一个更小的软件,其标记的资源集托管在 App Store 上。
5.2 额外配置
您可以指定
六、 ODR 的生命周期
软件按标签请求,而不是特定的资源。
6.1 共享 ODR
当您利用 ODR 开发软件时 ,您可能会注意到请求一个标签会并且获取的其他标签有关的资源。这是因为流程平台与用于获取共享资源的优化资产包配合利用。一个标签可能存在多个 Asset 中。构建软件时,Asset 由 Xcode 生成。
6.2 流程
1.软件程序从流程平台请求标签 。流程平台将所要求的标签转换为涵盖有关资源的一组资产包。
在下图中软件请求与 和 标签有关的资源。
2.标签的 Asset 位于本地存储中,则生命周期移动到第6步 。
3.标签的一个或多个 Asset 托管在 App Store 上,原因要么是它是软件的第一次发布 ,要么是之前启动在终端上的资源被清除(参见下面的 第9步)。
在下图中 ,所有 ODR 都在软件商店中 。
4.流程平台开展获取与尚未存储在本地存储中的有关的资源 。
5.与所要求的标签有关的 Asset 资源完成获取到终端 。
在下图中 ,与 和 标签有关的资源将获取到了终端中 。
6.如果成功获取了与所要求的标签有关的资源,或者如果资源已在终端存储中,则流程会提升 Asset 的引用计数,并通报软件所请求的标签可用。
在下图中 ,软件程序被告知与 和 标签有关的资源是可用的。
标签可用后 ,软件将利用与这些标签有关的资源。ODR 的访问方法与与获取的软件捆绑的资源相同。下图呈现获取的资源作为软件程序的虚拟成员 。
7.软件程序通报流程平台,它已经完成了对请求标签的利用 。
8.流程平台在本地存储中释放标签。这是通过下降与标签有关的 Asset 的引用计数来完成的 。
对终端上已利用的标签进行另一个请求将移动到 第1步。
9.流程平台从本地存储中清除与 Asset 有关的缓存资源。
七、 总结
本文只是初步的对 ODR 有了一个整体初步的了解 。很多细节还并没有涉及比如项目怎么配置 ,代码怎么写 。我将在后续素材中继续深入探索 。
下午喝水减赘肉 :肥胖最主要的表现方法就是赘肉
泉州市区新华路施工变更 北段已解除管制
泉州探索“人工智慧+”在基层治理中深度软件
6月1日起 泉州市区迎津街部分路段禁止机动车通行
汽车抵押到期解除抵押注册 各地车管部门可办
泉州永春县地理标志展示馆正式开馆
减肥计划提议 :大多数H2O女属于白领一族,家庭高于一切生活习惯
5天瘦身20斤的方法 ,减肥效率好评达98%
让你再“瘦一点”的按钮,你真的会吗 ?
5月28日至6月21日 泉州古城暂停路演为考生护航
“五一”假期 泉金客运航线客流创下新高
石狮市一季度规上工业提升值比增近一成
一周低卡轻食餐 ,懒人版减脂餐食谱
“五一”泉州接待游客超700万人次
数万份食谱精选减肥食谱平台将为读者供给一键共享