brew install go
open ~/.bash_profile
export PATH="$PATH:$(go env GOPATH)/bin"
先确保工具链完整
go install github.com/sagernet/gomobile/cmd/gomobile@v0.1.4 go install github.com/sagernet/gomobile/cmd/gobind@v0.1.4
gomobile init -v # 关键:-v 会打印详细日志
官方其实有现成的入口,不需要手写 gomobile
# 在源码根目录执行
make lib_install # 安装 gomobile 专用 fork
make lib_ios # 官方脚本会自动修补导出
xcframework successfully written out to: /Users/m/Desktop/sing-box-1.11.0/Libbox.xcframework
✅ 它到底是什么?
一个 Xcode 支持的二进制框架包
内部包含 ios-arm64(真机) ios-arm64_x86_64-simulator(模拟器)
你在 NetworkExtension 里 import Libbox 就能调用 sing-box 的 C/Go API 拖进 Xcode ▸ Embed & Sign 即可使用
如果之前创建过一个相同的项目,然后又删了重新创建这个相同id的项目就会爆错。
同一个 Bundle ID(com.your.vlessdemo 及其子 ID)之前已经注册过,被你手动删掉后,Apple 后台其实还占着坑,导致新的工程下载不到有效的 Provisioning Profile,于是签名时报 “code object is not signed at all”。