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 控制你的手机,做到类似手机 Agnet 的场景。

当然,其他支持 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...

相关推荐
古夕2 小时前
本地正常线上白屏:一次路由切换后刷新恢复问题的排查与修复
前端·ai编程
杉氧2 小时前
原生交互:如何在 Flutter 中嵌入 Android/iOS 原生组件并解决手势冲突
android·flutter·dart
9i编程2 小时前
AI 只解决眼前那个坑【上篇】:来源、图片、鲁棒性,把能聊一处一处补齐
人工智能·openai·ai编程
栀鸢ouo2 小时前
解决Element Plus表格展开行横向溢出、滚动截断问题(项目实战方案)
前端·vue.js
用户39051332192882 小时前
写了5年JS,才发现这10个方法能少写一半代码
前端
平凡的阿泽2 小时前
我用TRAE Work手搓了一个「谁是卧底」小游戏
前端·javascript
梅头脑2 小时前
第一次用AI生图,出来一只六条腿的猫——直到我拆开了扩散模型的6步推理过程
ai编程
Patrick在香港2 小时前
Python爬虫框架实战:优雅抓取香港政府公开API数据的通用方案
java·开发语言·爬虫·python·ai编程·数据可视化·可用性测试
Android打工仔2 小时前
Continuation 的链式关系 —— 一个 suspend 函数如何把结果交还给调用者?
android·kotlin
hunterandroid2 小时前
[Android 从零到一] Kotlin Channel 与复杂并发场景:从生产者-消费者到结构化并发治理
android