You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改KMM生成的XCFramework中Info.plist的MinimumOSVersion?

修改KMM生成的XCFramework的MinimumOSVersion值

有两种可靠的方法可以修改XCFramework的Info.plist中的MinimumOSVersion值,适配你的iOS应用TargetSDK 15的要求:

方法1:直接在KMM构建配置中指定最小iOS版本

这是最推荐的方式,从根源上控制生成的框架版本要求,无需后续手动修改。

在你的KMM项目的build.gradle.kts(或build.gradle)文件中,找到Kotlin多平台配置块,在iOS框架的二进制配置里添加minimumOSVersion指定:

kotlin {
    ios {
        binaries {
            framework {
                baseName = "YourFrameworkName" // 替换为你的框架名称
                minimumOSVersion = "15.0" // 设置为你的应用TargetSDK版本
            }
        }
    }
}

重新执行构建任务(./gradlew assembleXCFramework),生成的XCFramework中所有架构对应的Info.plist里的MinimumOSVersion都会被设置为15.0。

方法2:通过Gradle任务修改已生成的Info.plist

如果方法1未生效(比如存在配置覆盖的情况),可以添加一个Gradle任务,在XCFramework生成后自动修改所有相关的Info.plist文件。

在build.gradle.kts中添加以下任务:

tasks.withType<org.jetbrains.kotlin.gradle.tasks.XCFrameworkTask> {
    doLast {
        val targetOSVersion = "15.0"
        val frameworkName = "YourFrameworkName" // 替换为你的框架名称
        
        // 遍历XCFramework目录下所有的Info.plist文件
        fileTree(outputDir) {
            include("**/${frameworkName}.framework/Info.plist")
        }.forEach { plistFile ->
            // 使用macOS自带的PlistBuddy工具修改版本值
            exec {
                commandLine("/usr/libexec/PlistBuddy", "-c", "Set :MinimumOSVersion $targetOSVersion", plistFile.absolutePath)
            }
        }
    }
}

执行构建任务时,该任务会在XCFramework生成完成后自动修改所有架构对应的Info.plist文件,确保MinimumOSVersion统一为目标值。


内容的提问来源于stack exchange,提问作者Sascha Held

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 00:52:46