**问题:** - Windows/macOS/Linux 构建不依赖 libcore 编译 - 这些平台没有下载对应的 libcore 库文件 - 导致桌面平台构建时缺少必需的 native 库 **修复:** - 为每个平台创建独立的 libcore 编译任务: * build-libcore-android → libcore.aar * build-libcore-windows → libcore.dll + HiddifyCli.exe * build-libcore-macos → libcore.dylib + HiddifyCli * build-libcore-linux → libcore.so + HiddifyCli **正确的流程:** 1. 并行编译各平台的 libcore 2. 上传 libcore artifacts 3. 各平台构建任务下载对应的 libcore 4. 安装 Flutter 依赖 5. 构建 Flutter 应用 **影响:** - 所有平台现在都会正确编译和使用 libcore - libcore 版本锁定在 v3.1.7 (f993a57) - 桌面平台现在可以正常构建和运行 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
GitHub Actions 构建说明
📋 工作流概览
build-android-apk.yml - Android APK 自动构建
触发条件:
- ✅ 推送到
main或develop分支 - ✅ 打
v*标签时自动创建 Release - ✅ 手动触发(Actions 页面点击 "Run workflow")
构建产物:
libcore.aar- sing-box 核心库BearVPN-arm64-v8a-*.apk- 64位 ARM 版本(推荐)BearVPN-armeabi-v7a-*.apk- 32位 ARM 版本BearVPN-x86_64-*.apk- 模拟器版本
🚀 使用方法
方法一:推送代码自动构建
git add .
git commit -m "feat: 新功能"
git push origin main
方法二:手动触发
- 打开仓库 Actions 页面
- 点击 Build Android APK
- 点击 Run workflow
方法三:创建 Release
git tag v1.0.0
git push origin v1.0.0
📦 下载构建产物
- Actions 页面: 点击运行记录 → Artifacts 区域下载
- Releases 页面: 选择版本 → Assets 下载
🔧 配置 Release 签名(可选)
- 生成密钥:
keytool -genkey -v -keystore release.keystore -alias bearvpn -keyalg RSA -keysize 2048 -validity 10000
- 转换为 Base64:
base64 release.keystore > keystore.base64.txt
- 在 GitHub 仓库 Settings → Secrets 添加:
KEYSTORE_BASE64KEYSTORE_PASSWORDKEY_ALIASKEY_PASSWORD
⏱️ 构建时间
- libcore.aar: 10-15 分钟
- Flutter APK: 15-20 分钟
- 总计: 约 30 分钟
🐛 常见问题
Q: 构建失败 "libcore.aar not found"
A: 检查 libcore 子模块是否正确初始化
Q: Release 未创建
A: 标签必须以 v 开头,如 v1.0.0
生成时间: 2025-10-27