fix(conversation): 离屏不丢回复、列表预热 WS 与非阻塞进入聊天
- 后端:文本/转写后 AI 生成改为独立任务,避免断连取消整轮;按需 TTS 等与 WS 改动 - 前端:RealtimeSession 重绑 UI 时恢复流式 buffer;列表 onPressIn/挂载预热、已有会话立即 push - 同步会话相关类型、i18n、测试与 env/资源等累计改动 Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -1,23 +1,27 @@
|
||||
#!/usr/bin/env bash
|
||||
# 一次性:用 ImageMagick 7+(magick)从 assets/life-echo-logo.jpg 生成各平台 PNG。
|
||||
# 用 ImageMagick 7+(magick)从 assets/logo.png(或旧的 life-echo-logo.jpg)生成各平台 PNG。
|
||||
# 依赖:brew install imagemagick
|
||||
# 用法:在 app-expo 目录执行 ./scripts/generate-app-icon.sh
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
SRC="$ROOT/assets/life-echo-logo.jpg"
|
||||
OUT="$ROOT/assets/images"
|
||||
# 与 Android adaptiveIcon.backgroundColor、开屏底色一致(新 logo 浅紫系)
|
||||
BRAND_BG="#E6F4FE"
|
||||
|
||||
if [[ -f "$ROOT/assets/logo.png" ]]; then
|
||||
SRC="$ROOT/assets/logo.png"
|
||||
elif [[ -f "$ROOT/assets/life-echo-logo.jpg" ]]; then
|
||||
SRC="$ROOT/assets/life-echo-logo.jpg"
|
||||
else
|
||||
echo "missing: $ROOT/assets/logo.png or $ROOT/assets/life-echo-logo.jpg" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
TMP="$(mktemp -d)"
|
||||
trap 'rm -rf "$TMP"' EXIT
|
||||
|
||||
if [[ ! -f "$SRC" ]]; then
|
||||
echo "missing: $SRC" >&2
|
||||
exit 1
|
||||
fi
|
||||
if ! command -v magick >/dev/null; then
|
||||
echo "need: magick (ImageMagick 7)" >&2
|
||||
exit 1
|
||||
@@ -25,8 +29,12 @@ fi
|
||||
|
||||
mkdir -p "$OUT"
|
||||
|
||||
# 近白背景 → 透明(JPG 白底)
|
||||
magick "$SRC" -fuzz 12% -transparent white PNG32:"$TMP/fg.png"
|
||||
# 底图抠透明:JPG 近白底;PNG 主站 logo 为品牌浅底
|
||||
if [[ "$SRC" == *.jpg ]] || [[ "$SRC" == *.jpeg ]]; then
|
||||
magick "$SRC" -fuzz 12% -transparent white PNG32:"$TMP/fg.png"
|
||||
else
|
||||
magick "$SRC" -fuzz 12% -transparent "${BRAND_BG}" PNG32:"$TMP/fg.png"
|
||||
fi
|
||||
|
||||
# Android 自适应前景(透明底,1024,内容约 78% 安全区)
|
||||
magick "$TMP/fg.png" -resize '800x800>' -background none -gravity center -extent 1024x1024 \
|
||||
@@ -41,8 +49,12 @@ magick "$OUT/android-icon-foreground.png" -alpha extract -fill white -colorize 1
|
||||
PNG32:"$OUT/android-icon-monochrome.png"
|
||||
|
||||
# 开屏图:仅透明 logo(底色由 expo-splash-screen backgroundColor 填充)
|
||||
magick "$SRC" -fuzz 12% -transparent white -resize '400x400>' PNG32:"$OUT/splash-icon.png"
|
||||
magick "$TMP/fg.png" -resize '400x400>' PNG32:"$OUT/splash-icon.png"
|
||||
|
||||
magick "$OUT/icon.png" -resize 48x48 PNG32:"$OUT/favicon.png"
|
||||
|
||||
echo "OK → $OUT/icon.png, android-icon-foreground.png, android-icon-monochrome.png, splash-icon.png, favicon.png"
|
||||
# 带 Alpha 的 logo(与 app 内资源一致时可自行纳入版本库)
|
||||
magick "$TMP/fg.png" -resize '1024x1024>' -background none -gravity center -extent 1024x1024 \
|
||||
PNG32:"$OUT/icon-alpha.png"
|
||||
|
||||
echo "OK → $OUT/icon.png, icon-alpha.png, android-icon-foreground.png, android-icon-monochrome.png, splash-icon.png, favicon.png"
|
||||
|
||||
Reference in New Issue
Block a user