From f3867dcb4b789f335747eb784a7dc2aa64795419 Mon Sep 17 00:00:00 2001 From: sky121113 Date: Fri, 29 May 2026 14:42:11 +0800 Subject: [PATCH] =?UTF-8?q?[DOCS]=20=E4=BF=AE=E6=AD=A3=20release-apk=20?= =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E6=B5=81=E4=B8=AD=E5=AF=AB=E6=AD=BB=20S12XYU?= =?UTF-8?q?=20=E7=9A=84=E5=95=8F=E9=A1=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1. release-apk.md: 調整為依據專案 Flavor (Cmuh) 動態判斷硬體變體 (S9XYU) 與對應的螢幕尺寸與路徑。 --- .agents/workflows/release-apk.md | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/.agents/workflows/release-apk.md b/.agents/workflows/release-apk.md index 074916a..2f91a70 100644 --- a/.agents/workflows/release-apk.md +++ b/.agents/workflows/release-apk.md @@ -42,10 +42,16 @@ if [ "$TARGET_FLAVOR" != "General" ] && [ "$TARGET_FLAVOR" != "Chengwai" ] && [ exit 1 fi -echo "📦 [Release] 開始編譯正式版變體: ${TARGET_FLAVOR}S12XYURelease" +# 根據專案 Flavor 判定硬體 Flavor(中國醫 Cmuh 使用 S9XYU,其餘使用 S12XYU) +HW_FLAVOR="S12XYU" +if [ "$TARGET_FLAVOR" = "Cmuh" ]; then + HW_FLAVOR="S9XYU" +fi + +echo "📦 [Release] 開始編譯正式版變體: ${TARGET_FLAVOR}${HW_FLAVOR}Release" # 使用 clean 確保完整重新編譯,避開 incremental 快取問題 -./gradlew clean :app:assemble${TARGET_FLAVOR}S12XYURelease --no-daemon +./gradlew clean :app:assemble${TARGET_FLAVOR}${HW_FLAVOR}Release --no-daemon ``` ## 步驟二:導出正式 APK 並產出後台 Keyin 派送參考資料 @@ -62,8 +68,13 @@ if [ -n "$1" ]; then TARGET_FLAVOR=$(echo "$1" | awk '{print toupper(substr($0,1,1))tolower(substr($0,2))}') fi +HW_FLAVOR="S12XYU" +if [ "$TARGET_FLAVOR" = "Cmuh" ]; then + HW_FLAVOR="S9XYU" +fi + # 動態尋找編譯產出的最新正式版 APK 檔案 -APK_SOURCE=$(find app/build/outputs/apk/${TARGET_FLAVOR}S12XYU/release/ -name "app-S_12_XY_U_${TARGET_FLAVOR}-*-release.apk" | head -n 1) +APK_SOURCE=$(find app/build/outputs/apk/${TARGET_FLAVOR}${HW_FLAVOR}/release/ -name "app-S_*_${TARGET_FLAVOR}-*-release.apk" | head -n 1) if [ -n "$APK_SOURCE" ]; then APK_NAME=$(basename "$APK_SOURCE") @@ -74,12 +85,19 @@ if [ -n "$APK_SOURCE" ]; then echo "==================================================" # 提取與計算版本資訊 - MAJOR=$(grep "def verMajor" app/build.gradle | awk '{print $4}') MINOR=$(grep "def verMinor" app/build.gradle | awk '{print $4}') PATCH=$(grep "def verPatch" app/build.gradle | awk '{print $4}') + + # 根據硬體規格決定 Major (S9XYU 為 21 吋,S12XYU 為 10 吋) + if [ "$HW_FLAVOR" = "S9XYU" ]; then + MAJOR=21 + else + MAJOR=10 + fi + VERSION_NAME="${MAJOR}_0${MINOR}_${PATCH}_R" VERSION_CODE=$((MAJOR * 10000 + MINOR * 100 + PATCH)) - FLAVOR="${TARGET_FLAVOR}S12XYU" + FLAVOR="${TARGET_FLAVOR}${HW_FLAVOR}" echo "🚀 實體販賣機 OTA 後台新增版本 Keyin 參考資料:" echo "--------------------------------------------------"