Bun 官方正式支援 Android,Claude Code 未來可以直接在手機上跑

最近 Bun 官方正式宣布,下一個版本的 Bun 將正式支援 Android。當然官方也有說,不要把「能在 Android 手機上跑 Bun」誤解成「可以用 Bun 開發 Android App」;用 Bun 開發 Android App 幾乎沒有意義,它的定位比較像 Node.js 對 Android 的支援,本質上是官方把 Bun 這個 JS 執行時移植到了 Android 平台

也就是說,你可以在 Android 的 Termux 直接安裝 Bun,然後在手機上跑各種 JS 專案,包括 Claude Code因為 Bun 目前已被 Anthropic 收購,而 Claude Code 現在就是基於 Bun 的 CLI Agent

其實在官方支援之前,就已經有人做過這件事,例如 Termux 社群做的 bun-termux-loader,透過在 proot-distro 裡安裝 Ubuntu 再執行 Bun,接著透過各種 patch,讓 Claude Code、OpenCode、Amp 等 Bun 打包的 AI Agent 在手機上跑。

另外,Claude Code 從 v2.1.113 版本開始就切換成原生可執行二進位檔,不再是純 Node.js,這也導致之前在 Node.js 的 Termux/Android 環境上,Claude Code 無法正常運作

而官方在 #50270 也表示,Android 場景需要 Bun 的後續支援

你說停留在舊版本 Claude Code 就可以了?NO 兄弟,舊版本有好幾個大坑,涵蓋了從 3 月到 4 月的版本:《Claude Code 自己把自己寫降智》

所以,全村的希望又回到了 Bun。而現在 Bun 官方開始支援 Android 之後,前面那些麻煩步驟就都不需要了,官方 Android 支援落地後,你可以在 Termux 裡安裝 Bun,就能更輕鬆地執行 Claude Code。接著再允許手機透過 adb 控制(例如第一次先用電腦開啟 adb tcpip 5555 + 無線偵錯,之後手機自己就能連 localhost),之後 Claude Code 就可以透過 adb 控制你的手機,達到類似手機 Agent 的場景。

當然,其他支援 Bun 的專案也都可以跑。官方支援後,你只需要在 Termux 裡直接 pkg install bun,就等於直接在手機上執行比 Node.js 更快的 JS/TS 腳本或服務。

另一個用途是可以透過動態函式庫的形式,直接把 Bun 執行時載入到你的 App 裡,這樣你就可以在 Android App 中直接內建更高效能的 JS/TS 腳本與服務能力。

而這次 Bun 的 PR 實作是透過交叉編譯完成,具體就是新增 aarch64-linux-androidx86_64-linux-android Target:

  • 使用主機端 clang 21 + Android NDK r27c(API 28)的 sysroot
  • 由 Zig 負責處理 Bionic libc(Android 的 libc)標頭檔
  • 強制輸出 PIE(Position Independent Executable),因為 Android 不允許非 PIE 二進位檔

類似於 bun build --compile --target=bun-linux-arm64-android your-script.ts

所以可以看得出來,Bun 把 Android 當成一個特殊的 Linux(Bionic libc + SELinux 限制),透過 NDK sysroot 交叉編譯,再搭配大量相容性 Patch,讓 Bun 可以在 Android 上執行;實際上就是支援一種特殊的 Linux 場景。

不管怎麼說,這都是一件好事,至少可用的騷操作支援更多了。而且作為 Runtime,Bun 的效能本來就不錯,如果能正式支援,用來在本地取代 Node.js 也是個很好的選擇,至少速度上會好不少,一些 TS Agent 也可以直接搬過來用。

連結

github.com/oven-sh/bun…

github.com/oven-sh/bun…


原文出處:https://juejin.cn/post/7632776346619936787


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝2   💬10   ❤️1
140
🥈
我愛JS
💬2  
8
🥉
Gigi
2
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
📢 贊助商廣告 · 我要刊登