所以在iOS上Apple不会让你发布一个拥有动态库(dylib)的应用程序。 (虽然有解决方法,但Xcode不会编译它,并且应用程序商店不会批准它。)
我们有一个SDK,我们目前正在从Windows迁移到iOS。在Windows上,我们将所有依赖项静态链接到一个dll中,因此我们只需向使用dll的任何人提供1个文件,因此我们不必公开发布我们正在使用的所有库并保持大小该文件很小,因为我们未使用的那些库的任何部分都被编译出来。
在iOS上,由于无法发布加载动态库的应用程序,我们将被迫发布一个类似的框架,其中包括我们链接的所有库。使用我们的sdk的开发人员然后将我们的lib及其所有依赖项编译到他们的应用程序中。
这样任何使用我们SDK的人都可以知道我们正在使用哪些库,并且会增加我们的可交付成果的大小,因为它必须包含我们所链接的所有库的完整版本。 (至少在框架中我们仍然只提供1个“文件”。)
Apple有什么方法可以避免让每个人都知道我们正在使用哪些库?