GetMoreRam:不用 Xcode,給側載 App 加上 Increased Memory Limit

分享 ➥  
                 

側載的模擬器、AI App 常常跑一跑就閃退,原因未必是程式寫爛,而是撞上了 iOS 的記憶體天花板。GetMoreRam 做的事情很專一:幫你的側載 App 加上 Increased Memory Limit 權限,讓它能用更多記憶體——而且全程不需要 Xcode。

檔案:hugeBlack/GetMoreRam

深度:為什麼 App 會「被系統殺掉」?

iOS 有個叫 jetsam 的記憶體守門員:每個 App 都有一個記憶體用量上限,超標就直接被系統終止,而且不給警告。這個上限寫在 App 的 entitlements(權限清單) 與 provisioning profile 裡,簽名當下就定型,事後改不了。

Increased Memory Limit 就是一道「放寬上限」的權限:

  • 本來:App 記憶體一到預設上限,jetsam 直接殺掉——模擬器載大型遊戲、裝置端 LLM 載模型時最常中招
  • 加了權限:上限提高,App 可以吃到更多記憶體再被系統介入

在 Xcode 裡這只是專案設定的一個開關;但對側載 App 來說,AltStore / SideStore 簽出的預設 profile 不帶這個權限,過去只能回 Xcode 重新簽。GetMoreRam 把這個流程搬到手機上。

它是怎麼做到的?

GetMoreRam 是 StosSign(Stossy11 的簽名工具庫)的包裝 App,anisette 資料取得程式碼則來自 SideStore。流程是:

  1. 先把 GetMoreRam 本身側載進手機
  2. 在設定裡登入當初簽那個 App 的同一個帳號
  3. 到 App IDs 頁面,點 Refresh,點你要加權限的 App
  4. 點 Add Increased Memory Limit——它會透過開發者後台 API,修改該 App ID 的權限設定
  5. 從 SideStore / AltStore 重新安裝一次那個 App,讓新的 provisioning profile(已帶權限)嵌進去
  6. 檢查權限是否已生效

關鍵在第 5 步:權限是簽名時嵌進 profile 的,所以改完設定一定要重裝,舊的安裝包不會自動獲得權限。

冷思考

  1. 不是真的增加實體 RAM:它只是把「被殺掉的門檻」往上調。手機實體記憶體就那麼多,系統整體壓力大時,iOS 還是會動手
  2. 要登入 Apple 帳號:跟所有側載工具一樣,帳號密碼要交給第三方 App。請只用 GitHub 官方 repo 的版本;作者是 SideStore 貢獻者,算是可查的背書,但原則不變:來路不明的重打包版本不要碰
  3. 不是每個閃退都靠它解決:閃退也可能是程式 bug、JIT 問題或 iOS 版本相容性。先確認是記憶體問題(例如載入大型內容時才閃退),再用它
  4. 效果因裝置而異:舊機型實體 RAM 本來就小,調高上限的實質幫助有限;新機型、大記憶體裝置受益最明顯

結語

GetMoreRam 是個「只做一件事」的小工具,但它解決的是側載圈一個長期痛點:不用開電腦、不用 Xcode,在手機上點幾下,就能給吃記憶體的 App 鬆綁。如果你常玩模擬器或裝置端 AI,這是值得裝一個備著的工具。