Files
Flutter_Shell/README.md

62 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# im_webview_app
Flutter WebView 套壳 App启动后会请求 `/client_config/query` 获取 H5 线路配置,并加载第一条可用线路。
默认情况下,非本地 Web 访问会使用当前服务地址的 origin 作为 H5 线路和接口域名,例如访问 `https://app.example.com/app/` 时会请求 `https://app.example.com/client_config/query`。本地访问(如 `localhost``127.0.0.1`)继续使用固定兜底域名 `https://h5-test.imharry.work/`
## H5 线路切换
线路切换在 Flutter 套壳层完成。远程配置不可用时,会先使用启动兜底线路;也可以在打包时覆盖启动线路或配置接口地址:
```bash
flutter build apk --release --dart-define=H5_LINE_URLS=https://h5-one.example/,https://h5-two.example/
flutter build apk --release --dart-define=CLIENT_CONFIG_QUERY_URL=https://api.example.com/client_config/query
flutter build apk --release --dart-define=BOOTSTRAP_H5_LINE_URL=https://h5-one.example/
```
## 本地打包
```bash
flutter build apk --release
```
APK 产物:
```text
build/app/outputs/flutter-apk/app-release.apk
```
## 自动部署 APK
`app` 目录执行:
```bash
./deploy-app.sh
```
这个命令会自动执行:
```bash
flutter build apk --release
scp -P 22 ./build/app/outputs/flutter-apk/app-release.apk root@54.116.29.247:/data/wwwroot/apk/
ssh -p 22 root@54.116.29.247 "bash /data/wwwroot/apk/show_apk_link.sh app-release.apk"
```
如果已经打包好了,只想上传现有 APK
```bash
./deploy-app.sh --skip-build
```
如果要上传自定义 APK
```bash
./deploy-app.sh --skip-build --apk ./build/app/outputs/flutter-apk/app-release.apk
```
远端配置也可以通过参数覆盖:
```bash
./deploy-app.sh --host 54.116.29.247 --user root --port 22
```