142 lines
3.4 KiB
Markdown
142 lines
3.4 KiB
Markdown
|
|
# 环境配置汇总
|
|||
|
|
|
|||
|
|
## 一、Android APP 配置
|
|||
|
|
|
|||
|
|
### 1. 主配置文件:`android-app/local.properties`
|
|||
|
|
|
|||
|
|
```properties
|
|||
|
|
# ============ API 服务器地址配置 ============
|
|||
|
|
# 主API地址 - 模拟器使用
|
|||
|
|
api.base_url_emulator=http://1.15.149.240:8083/
|
|||
|
|
# 主API地址 - 真机使用
|
|||
|
|
api.base_url_device=http://1.15.149.240:8083/
|
|||
|
|
|
|||
|
|
# ============ 直播/通话服务地址配置 ============
|
|||
|
|
# 直播/通话 WebSocket 服务地址
|
|||
|
|
live.server_host=1.15.149.240
|
|||
|
|
live.server_port=8083
|
|||
|
|
# TURN 服务器地址(视频通话中继)
|
|||
|
|
turn.server_host=1.15.149.240
|
|||
|
|
turn.server_port=3478
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**说明**:
|
|||
|
|
- `api.base_url_emulator` - 模拟器运行时使用的API地址
|
|||
|
|
- `api.base_url_device` - 真机运行时使用的API地址
|
|||
|
|
- `live.server_host/port` - 直播和通话WebSocket服务地址
|
|||
|
|
- `turn.server_host/port` - WebRTC TURN中继服务器地址
|
|||
|
|
|
|||
|
|
### 2. 相关代码文件(无需修改,自动读取local.properties)
|
|||
|
|
|
|||
|
|
| 文件 | 作用 |
|
|||
|
|
|------|------|
|
|||
|
|
| `app/build.gradle.kts` | 读取local.properties生成BuildConfig |
|
|||
|
|
| `ApiConfig.java` | 提供统一的API地址获取方法 |
|
|||
|
|
| `ApiClient.java` | 网络请求客户端,自动选择模拟器/真机地址 |
|
|||
|
|
| `WebRTCConfig.java` | WebRTC/TURN服务器配置 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 二、前端 Admin 配置
|
|||
|
|
|
|||
|
|
### 1. 开发环境:`Zhibo/admin/.env.development`
|
|||
|
|
|
|||
|
|
```properties
|
|||
|
|
ENV = 'development'
|
|||
|
|
# 本地开发时连接本地后端
|
|||
|
|
VUE_APP_BASE_API = 'http://127.0.0.1:30001'
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 2. 生产环境:`Zhibo/admin/.env.production`
|
|||
|
|
|
|||
|
|
```properties
|
|||
|
|
ENV = 'production'
|
|||
|
|
# 生产环境使用相对路径,由Nginx代理
|
|||
|
|
VUE_APP_BASE_API = ''
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
### 3. 预发布环境:`Zhibo/admin/.env.staging`
|
|||
|
|
|
|||
|
|
```properties
|
|||
|
|
ENV = 'production'
|
|||
|
|
VUE_APP_BASE_API = 'http://192.168.31.35:2500'
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**说明**:
|
|||
|
|
- 开发环境:`npm run dev` 使用 `.env.development`
|
|||
|
|
- 生产打包:`npm run build:prod` 使用 `.env.production`
|
|||
|
|
- 预发布打包:`npm run build:stage` 使用 `.env.staging`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 三、环境切换指南
|
|||
|
|
|
|||
|
|
### 切换到生产环境(服务器 1.15.149.240)
|
|||
|
|
|
|||
|
|
**Android APP**:
|
|||
|
|
```properties
|
|||
|
|
# android-app/local.properties
|
|||
|
|
api.base_url_emulator=http://1.15.149.240:8083/
|
|||
|
|
api.base_url_device=http://1.15.149.240:8083/
|
|||
|
|
live.server_host=1.15.149.240
|
|||
|
|
live.server_port=8083
|
|||
|
|
turn.server_host=1.15.149.240
|
|||
|
|
turn.server_port=3478
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
**前端 Admin**:
|
|||
|
|
```properties
|
|||
|
|
# Zhibo/admin/.env.production
|
|||
|
|
VUE_APP_BASE_API = ''
|
|||
|
|
```
|
|||
|
|
然后执行 `npm run build:prod`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
### 切换到本地开发环境
|
|||
|
|
|
|||
|
|
**Android APP**:
|
|||
|
|
```properties
|
|||
|
|
# android-app/local.properties
|
|||
|
|
api.base_url_emulator=http://10.0.2.2:8081/
|
|||
|
|
api.base_url_device=http://192.168.x.x:8081/
|
|||
|
|
live.server_host=1.15.149.240
|
|||
|
|
live.server_port=8083
|
|||
|
|
turn.server_host=1.15.149.240
|
|||
|
|
turn.server_port=3478
|
|||
|
|
```
|
|||
|
|
> 注意:直播/通话服务建议始终使用远程服务器
|
|||
|
|
|
|||
|
|
**前端 Admin**:
|
|||
|
|
```properties
|
|||
|
|
# Zhibo/admin/.env.development
|
|||
|
|
VUE_APP_BASE_API = 'http://127.0.0.1:30001'
|
|||
|
|
```
|
|||
|
|
然后执行 `npm run dev`
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 四、服务端口说明
|
|||
|
|
|
|||
|
|
| 服务 | 端口 | 说明 |
|
|||
|
|
|------|------|------|
|
|||
|
|
| Admin API | 30003 | 管理后台API |
|
|||
|
|
| Front API | 8083 | 前端/APP API |
|
|||
|
|
| Admin 前端 | 30002 | 管理后台网页 |
|
|||
|
|
| TURN 服务 | 3478 | WebRTC中继 |
|
|||
|
|
| SRS RTMP | 25002 | 直播推流 |
|
|||
|
|
| SRS HTTP | 25003 | 直播拉流 |
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
## 五、修改后需要的操作
|
|||
|
|
|
|||
|
|
### Android APP
|
|||
|
|
1. 修改 `local.properties`
|
|||
|
|
2. 重新编译:`./gradlew assembleRelease`
|
|||
|
|
|
|||
|
|
### 前端 Admin
|
|||
|
|
1. 修改对应的 `.env.*` 文件
|
|||
|
|
2. 重新打包:`npm run build:prod`
|
|||
|
|
3. 上传 `dist` 目录到服务器
|