我们正在开发一个应用程序,其中一些经过验证的用户可以通过订阅来销售他们的内容。
内容是由视频、照片和提示组成的数字内容。
我们想提供按月订阅的付费内容。我研究了一些应用程序,通常你有所有付费内容的自动更新订阅。
但是,我们的客户希望为每个提供付费内容的用户提供单独的订阅。
这意味着每个内容消费者(用户)将能够拥有无限数量的并发订阅,因为他们将能够订阅他们想要的任何内容提供商。
我们目前正在研究的其他选项:我们正在考虑允许用户访问特定数量用户的付费内容的层数:
所有订阅都在同一个组中,每个订阅都有不同的级别。当用户购买产品时,他们可以选择访问哪些付费内容(不切换/或每月切换)。
最后的问题:
我目前正在考虑优化项目的编译时间.我一直都知道有类似于整个模块优化的东西但是在构建设置中没有检查它我没有真正深入研究它.
据我了解:
WMO应该导致更快的执行代码,但可以稍微增加编译时间,因为将整个模块文件编译为一个整体而不是并行地单独编译每个文件. https://swift.org/blog/whole-module-optimizations/
所以建议设置Swift优化级别:
None [-Onone]Fast, Whole Module Optimization [-O -whole-module-optimization]
因为对于偶尔的发布版本而言,拥有最佳编译时间并不重要但是在研究减少调试配置编译时间的一些技巧时,我发现了这个用户自定义设置:
SWIFT_WHOLE_MODULE_OPTIMIZATION = YES (用于调试)SWIFT_WHOLE_MODULE_OPTIMIZATION = NO (发布)这个设置减少了我的DEBUG编译时间差不多一半,但它也让我感到困惑.我无法找到有关此设置及其来源的任何文档. (我对swift编译器的理解非常基础,之前我没有使用过用户定义的设置)
每个人都建议它减少编译时间而不解释原因,或者解释不会与上面提到的Swift优化级别冲突.
据我了解,这个设置为YES的设置应该会增加编译时间,因为它看起来启用了wmo.因此,我认为我对wmo的理解,或者这个特定的设置是错误的.
所以我的问题是:
SWIFT_WHOLE_MODULE_OPTIMIZATION设置和有YES什么
区别?
为什么Swift Optimization Level减少编译时间?
谢谢!