乐于分享
好东西不私藏

一个给 Mac 用的 iOS 模拟器瘦身工具,关掉不必要的服务,单个模拟器的内存能从 4GB 压到 0.9GB 左右

一个给 Mac 用的 iOS 模拟器瘦身工具,关掉不必要的服务,单个模拟器的内存能从 4GB 压到 0.9GB 左右

simslim

一个给 Mac 用的 iOS 模拟器瘦身工具。平时一个模拟器启动后要跑将近 180 个后台服务,Siri、Spotlight 索引、照片分析、iCloud 同步这些,开发测试根本用不上,白白吃掉 4GB 内存。SimSlim 把这些没用的后台进程关掉,内存能压到 900MB 左右,一台 16GB 的 MacBook Pro 原本开 5 个模拟器就开始卡,现在能同时跑 19 个。

Github地址

https://github.com/MobAI-App/simslim

功能特性

  • 一键开关瘦身:对指定模拟器启用或恢复标准模式,修改持久生效
  • 细粒度控制:按类别批量关闭服务,也可以单独保留某个功能,比如留着 Spotlight 搜索或者推送通知
  • 实时监控:查看模拟器运行状态、内存占用、磁盘分配大小
  • 磁盘清理:只读分析可回收空间,确认后安全清理缓存、日志、临时文件等白名单目录,不动系统文件
  • 模拟器管理:克隆、重命名、启动、关机、抹除、删除,带 JSON 输出方便接 CI
  • 自带 macOS App:SwiftUI 界面,支持搜索、排序、按服务单独控制,操作更直观

怎么用

装起来很快,二选一:

brew install mobai-app/tap/simslim

或者

go install github.com/mobai-app/simslim@latest

只支持 macOS,需要装了 Xcode 和 iOS Simulator runtime,因为底层调的是 xcrun simctl

命令行常用的几条:

simslim list                    # 看哪些模拟器已经瘦过身simslim on <udid>               # 给指定模拟器开瘦身,自动重启生效simslim off <udid>              # 恢复标准模式
simslim status <udid>           # 看当前瘦到什么程度
simslim measure <udid>          # 实时内存占用
simslim disk-plan <udid>        # 只读分析能清多少垃圾
simslim disk-clean --categories caches,logs --confirm <udid>   # 确认后清理

要留特定功能的话,比如留着搜索:

simslim on <udid> --except search

或者单独留推送服务:

simslim on <udid> --keep com.apple.apsd

想自己编译图形界面版:

make appopen build/SimSlim.app

注意瘦身和磁盘清理是两套独立操作,清理前 disk-plan 先看一眼,确认无误再加 --confirm 执行。模拟器抹除或删除后瘦身状态会丢失,新建或升级 runtime 的模拟器也是标准模式起步,需要重新跑 simslim on