188 lines
5.2 KiB
Markdown
188 lines
5.2 KiB
Markdown
# BearVPN 快速参考
|
|
|
|
## 🚀 快速开始
|
|
|
|
### 1. 克隆项目后立即修改
|
|
```bash
|
|
# 1. 修改应用名称
|
|
# 文件: pubspec.yaml
|
|
name: your_app_name
|
|
|
|
# 2. 修改包标识符
|
|
# iOS: ios/Base.xcconfig
|
|
BASE_BUNDLE_IDENTIFIER=com.yourcompany.yourapp
|
|
|
|
# macOS: macos/Runner/Configs/AppInfo.xcconfig
|
|
PRODUCT_BUNDLE_IDENTIFIER = com.yourcompany.yourapp
|
|
|
|
# Android: android/app/build.gradle
|
|
applicationId "com.yourcompany.yourapp"
|
|
|
|
# 3. 配置签名信息
|
|
# 文件: ios_signing_config.sh 和 macos_signing_config.sh
|
|
export APPLE_ID="your-apple-id@example.com"
|
|
export TEAM_ID="YOUR_TEAM_ID"
|
|
```
|
|
|
|
## 📁 关键文件位置
|
|
|
|
| 配置项 | 文件位置 | 说明 |
|
|
|--------|----------|------|
|
|
| 应用名称 | `pubspec.yaml` | 项目基础配置 |
|
|
| **API 域名** | `lib/app/common/app_config.dart` | **API 服务器域名** |
|
|
| iOS 包名 | `ios/Base.xcconfig` | iOS 包标识符 |
|
|
| macOS 包名 | `macos/Runner/Configs/AppInfo.xcconfig` | macOS 包标识符 |
|
|
| Android 包名 | `android/app/build.gradle` | Android 应用 ID |
|
|
| iOS 签名 | `ios_signing_config.sh` | iOS 签名配置 |
|
|
| macOS 签名 | `macos_signing_config.sh` | macOS 签名配置 |
|
|
| 多语言 | `assets/translations/` | 翻译文件目录 |
|
|
| 应用图标 | `assets/images/logo.svg` | 主 Logo |
|
|
|
|
## 🔧 常用命令
|
|
|
|
### Flutter 命令
|
|
```bash
|
|
# 安装依赖
|
|
flutter pub get
|
|
|
|
# 清理项目
|
|
flutter clean
|
|
|
|
# 构建各平台
|
|
flutter build apk # Android
|
|
flutter build ios # iOS
|
|
flutter build macos # macOS
|
|
flutter build windows # Windows
|
|
flutter build web # Web
|
|
```
|
|
|
|
### 构建脚本
|
|
```bash
|
|
# iOS 构建
|
|
./build_ios.sh
|
|
|
|
# macOS 构建
|
|
./build_macos_simple.sh
|
|
|
|
# 签名和打包
|
|
./sign_and_package.sh
|
|
|
|
# 公证
|
|
./notarize_only.sh
|
|
```
|
|
|
|
## 🎨 图标尺寸
|
|
|
|
| 平台 | 尺寸 | 位置 |
|
|
|------|------|------|
|
|
| iOS | 1024x1024 | `ios/Runner/Assets.xcassets/AppIcon.appiconset/` |
|
|
| macOS | 1024x1024 | `macos/Runner/Assets.xcassets/AppIcon.appiconset/` |
|
|
| Android | 512x512 | `android/app/src/main/res/mipmap-xxxhdpi/` |
|
|
| Web | 512x512 | `web/icons/Icon-512.png` |
|
|
|
|
## 🌍 支持的语言
|
|
|
|
- 🇨🇳 简体中文 (`strings_zh.i18n.json`)
|
|
- 🇹🇼 繁体中文 (`strings_zh_Hant.i18n.json`)
|
|
- 🇺🇸 英文 (`strings_en.i18n.json`)
|
|
- 🇯🇵 日文 (`strings_ja.i18n.json`)
|
|
- 🇪🇸 西班牙文 (`strings_es.i18n.json`)
|
|
- 🇷🇺 俄文 (`strings_ru.i18n.json`)
|
|
- 🇪🇪 爱沙尼亚文 (`strings_et.i18n.json`)
|
|
|
|
## ⚠️ 必须修改的占位符
|
|
|
|
| 占位符 | 说明 | 文件位置 |
|
|
|--------|------|----------|
|
|
| `apicn.bearvpn.top` | **API 主域名** | `lib/app/common/app_config.dart` |
|
|
| `apibear.nsdsox.com` | **API 备用域名** | `lib/app/common/app_config.dart` |
|
|
| `xxxxxxxx@example.com` | Apple ID | 所有签名脚本 |
|
|
| `xxxxxxxxxxxxxxxx` | App 专用密码 | 所有签名脚本 |
|
|
| `XXXXXXXXXX` | Team ID | 所有签名脚本 |
|
|
| `Your Company Name` | 公司名称 | 签名配置 |
|
|
| `Your Name` | 开发者姓名 | 签名配置 |
|
|
| `com.yourcompany.yourapp` | 包标识符 | 所有平台配置 |
|
|
|
|
## 🌐 域名配置详解
|
|
|
|
### 修改 API 服务器域名
|
|
```dart
|
|
// 文件: lib/app/common/app_config.dart
|
|
class KRDomain {
|
|
// 1. 修改主域名列表
|
|
static List<String> kr_baseDomains = [
|
|
"your-api-domain.com", // 替换为您的API域名
|
|
"backup-api-domain.com" // 备用API域名
|
|
];
|
|
|
|
// 2. 修改当前使用的域名
|
|
static String kr_currentDomain = "your-api-domain.com";
|
|
|
|
// 3. 修改备用域名获取地址(可选)
|
|
static List<String> kr_backupDomainUrls = [
|
|
"https://your-backup-server.com/domains.txt",
|
|
// 添加更多备用地址
|
|
];
|
|
|
|
// 4. 修改本地备用域名(可选)
|
|
static List<String> kr_localBackupDomains = [
|
|
"api.yourcompany.com",
|
|
"backup.yourcompany.com",
|
|
// 添加更多本地备用域名
|
|
];
|
|
}
|
|
```
|
|
|
|
### 域名配置说明
|
|
- **主域名列表**: 应用会按顺序尝试这些域名
|
|
- **当前域名**: 应用启动时使用的默认域名
|
|
- **备用域名地址**: 当主域名都不可用时,从这些地址获取新的域名列表
|
|
- **本地备用域名**: 最后的兜底方案,当所有其他方式都失败时使用
|
|
|
|
## 🔐 签名流程
|
|
|
|
### iOS 签名
|
|
1. 修改 `ios_signing_config.sh`
|
|
2. 运行 `source ios_signing_config.sh`
|
|
3. 运行 `./build_ios.sh`
|
|
|
|
### macOS 签名
|
|
1. 修改 `macos_signing_config.sh`
|
|
2. 运行 `source macos_signing_config.sh`
|
|
3. 运行 `./sign_and_package.sh`
|
|
|
|
## 📱 平台支持
|
|
|
|
| 平台 | 状态 | 构建脚本 |
|
|
|------|------|----------|
|
|
| iOS | ✅ | `build_ios.sh` |
|
|
| macOS | ✅ | `build_macos_simple.sh` |
|
|
| Android | ✅ | `flutter build apk` |
|
|
| Windows | ✅ | `flutter build windows` |
|
|
| Linux | ✅ | `flutter build linux` |
|
|
| Web | ✅ | `flutter build web` |
|
|
|
|
## 🆘 故障排除
|
|
|
|
### 常见问题
|
|
1. **签名失败**: 检查证书是否有效
|
|
2. **构建失败**: 运行 `flutter clean && flutter pub get`
|
|
3. **公证失败**: 检查 Apple ID 和密码
|
|
4. **图标不显示**: 检查图标文件路径和尺寸
|
|
|
|
### 调试命令
|
|
```bash
|
|
# 检查连接
|
|
./debug_connection.sh
|
|
|
|
# 测试连接
|
|
./test_connection.sh
|
|
|
|
# 检查公证状态
|
|
./check_notarization_status.sh
|
|
```
|
|
|
|
---
|
|
|
|
**💡 提示**: 修改配置后记得运行 `flutter clean && flutter pub get` 重新构建项目。
|