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

iOS打包归档失败:SQLCipher.bundle 未找到

iOS打包归档失败:SQLCipher.bundle 未找到

嘿,遇到这个SQLCipher.bundle找不到的问题我之前帮好几个开发者搞定过,别慌,咱们一步步来排查解决:

1. 补全依赖配置并更新

看你贴的pubspec.yaml里fluttertoast的版本没写完,先把所有依赖的版本号补全,然后执行:

flutter pub get

确保项目的Flutter依赖都正确拉取到本地。如果你的项目里用到了依赖SQLCipher的包(比如sqflite_sqlcipher),也要确认这个包的版本和你当前的Flutter SDK(你配置的是>=3.2.0 <4.0.0)兼容。

2. 检查并修复iOS Pod配置

打开iOS目录下的Podfile,确保里面正确引入了SQLCipher的Pod,示例配置如下:

target 'Runner' do
  use_frameworks!
  use_modular_headers!

  flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
  
  # 手动指定SQLCipher的版本,确保和依赖包要求匹配
  pod 'SQLCipher', '~> 4.5.5'
end

然后进入iOS目录执行命令更新Pod依赖:

cd ios
pod deintegrate
pod install --repo-update

这一步会重新下载并配置所有iOS端的依赖,包括SQLCipher。

3. 确认Xcode中已正确添加SQLCipher.bundle

打开Xcode项目(路径是ios/Runner.xcworkspace),按以下步骤检查:

  • 左侧文件导航栏里找到Frameworks目录,看看有没有SQLCipher.bundle
  • 如果没有,右键Frameworks → Add Files to "Runner"...
  • 找到路径ios/Pods/SQLCipher/SQLCipher.bundle,勾选Copy items if needed后点击Add

4. 检查Xcode Build Phases配置

进入Xcode的Runner target → Build Phases标签:

  • 查看Copy Bundle Resources列表,确保SQLCipher.bundle在里面,没有的话点击+号添加
  • 再检查Link Binary With Libraries列表,确认SQLCipher.framework已被添加

5. 清理缓存后重新构建

最后做一次彻底的清理,避免缓存问题:

  1. Xcode中按Cmd+Shift+K清理项目,再按Cmd+Option+Shift+K清理全局构建缓存
  2. 执行flutter clean清理Flutter项目缓存
  3. 重新执行flutter pub get和cd ios && pod install
  4. 尝试重新归档(Xcode中点击Product → Archive)

按照这些步骤走下来,大部分情况下这个归档失败的问题都能解决。如果还是不行,可以检查下Xcode的Build Settings里的Framework Search Paths和Bundle Resource Paths,确保它们包含SQLCipher相关文件的路径。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.08 13:50:29