iOS和macOS平台Flutter SharedPreferences报错求助
针对你遇到的Warning: Unable to create restoration in progress marker file (11db)和Thread 1: EXC_BAD_ACCESS (code=1, address=0x0)报错(出现在SharedPreferencesPlugin.swift第18行),按以下步骤操作:
清理Flutter和iOS端缓存:
- 终端执行
flutter clean - 进入iOS目录删除Pod相关文件:
cd ios && rm -rf Pods Podfile.lock - 重新拉取依赖:
flutter pub get,接着执行cd ios && pod install
- 终端执行
检查SharedPreferences版本兼容性:
打开项目根目录的pubspec.yaml,将shared_preferences指定为稳定版本(比如shared_preferences: ^2.2.2),保存后执行flutter pub get调整Xcode项目设置:
- 用Xcode打开
ios/Runner.xcworkspace - 选中项目Target,进入
Build Settings,搜索Dead Code Stripping,设置为YES - 执行Xcode清理:点击顶部菜单栏
Product -> Clean Build Folder(快捷键Cmd+Shift+K)
- 用Xcode打开
重置设备应用数据:
模拟器直接删除应用后,选择Device -> Reset Content and Settings;真机卸载应用后重启再重新安装
这个报错本质是SharedPreferences插件初始化时访问了空对象,大概率是缓存堆积或版本不兼容导致的,按上述步骤操作基本能解决。
内容的提问来源于stack exchange,提问作者James Taga
相关产品推荐
相关产品推荐

