如何在KMM生成的iOS动态框架中启用MERGEABLE_LIBRARY?
在KMM iOS动态框架中启用Xcode 15的Mergeable Binaries特性
要在KMM生成的iOS动态框架中启用Xcode 15引入的Mergeable Binaries特性,只需在模块级build.gradle.kts的iOS目标配置中,为框架添加MERGEABLE_LIBRARY = YES的Xcode构建设置即可,具体配置如下:
打开项目模块的build.gradle.kts文件,找到kotlin代码块下的iOS目标配置区域,按以下方式修改:
kotlin { ios { binaries.framework { // 确保框架为动态类型(Mergeable Binaries仅支持动态框架) isStatic = false // 全局启用Mergeable Binaries(对所有构建变体生效) xcodeConfiguration { settings["MERGEABLE_LIBRARY"] = "YES" } // 也可针对特定构建变体单独配置(比如仅Release版本启用) // xcodeConfiguration("Release") { // settings["MERGEABLE_LIBRARY"] = "YES" // } } // 声明需要支持的iOS架构 iosX64() iosArm64() iosSimulatorArm64() } // 其他平台(如Android)的配置... }
配置完成后,重新构建KMM项目生成XCFramework,该框架在Xcode 15环境下就会支持Mergeable Binaries特性,允许Xcode合并多个动态框架的二进制内容,优化应用的包体积与加载性能。
内容的提问来源于stack exchange,提问作者iDeveloper
相关产品推荐
相关产品推荐

