mirror of
https://github.com/SECTL/SecScore.git
synced 2026-07-19 19:04:23 +08:00
修复 Android APK 签名:自动查找 apksigner 路径
- 移除 sdkmanager 安装步骤(命令不存在) - 使用 find 命令自动查找 apksigner 可执行文件 - 简化签名流程,依赖 Android SDK 中已有的 build-tools
This commit is contained in:
@@ -213,13 +213,6 @@ jobs:
|
|||||||
- name: 构建 Android Universal APK
|
- name: 构建 Android Universal APK
|
||||||
run: pnpm tauri android build --target aarch64 --target armv7 --target x86_64
|
run: pnpm tauri android build --target aarch64 --target armv7 --target x86_64
|
||||||
|
|
||||||
- name: 安装 Android SDK Build Tools
|
|
||||||
env:
|
|
||||||
ANDROID_SIGNING_KEY: ${{ secrets.ANDROID_SIGNING_KEY }}
|
|
||||||
if: ${{ env.ANDROID_SIGNING_KEY != '' }}
|
|
||||||
run: |
|
|
||||||
sdkmanager "build-tools;33.0.0"
|
|
||||||
|
|
||||||
- name: 签名 APK
|
- name: 签名 APK
|
||||||
env:
|
env:
|
||||||
ANDROID_SIGNING_KEY: ${{ secrets.ANDROID_SIGNING_KEY }}
|
ANDROID_SIGNING_KEY: ${{ secrets.ANDROID_SIGNING_KEY }}
|
||||||
@@ -228,6 +221,14 @@ jobs:
|
|||||||
ANDROID_STORE_PASSWORD: ${{ secrets.ANDROID_STORE_PASSWORD }}
|
ANDROID_STORE_PASSWORD: ${{ secrets.ANDROID_STORE_PASSWORD }}
|
||||||
if: ${{ env.ANDROID_SIGNING_KEY != '' }}
|
if: ${{ env.ANDROID_SIGNING_KEY != '' }}
|
||||||
run: |
|
run: |
|
||||||
|
# 找到 Android SDK 中的 apksigner
|
||||||
|
APKSIGNER=$(find ${ANDROID_SDK_ROOT} -name "apksigner" -type f 2>/dev/null | head -1)
|
||||||
|
if [ -z "$APKSIGNER" ]; then
|
||||||
|
echo "错误: 未找到 apksigner"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "使用 apksigner: $APKSIGNER"
|
||||||
|
|
||||||
# 创建临时密钥库文件
|
# 创建临时密钥库文件
|
||||||
echo "$ANDROID_SIGNING_KEY" | base64 -d > /tmp/android_keystore.jks
|
echo "$ANDROID_SIGNING_KEY" | base64 -d > /tmp/android_keystore.jks
|
||||||
|
|
||||||
@@ -237,7 +238,7 @@ jobs:
|
|||||||
signed_apk="${apk/-unsigned/-signed}"
|
signed_apk="${apk/-unsigned/-signed}"
|
||||||
|
|
||||||
# 使用 apksigner 签名
|
# 使用 apksigner 签名
|
||||||
"${ANDROID_SDK_ROOT}/build-tools/33.0.0/apksigner" sign \
|
"$APKSIGNER" sign \
|
||||||
--ks /tmp/android_keystore.jks \
|
--ks /tmp/android_keystore.jks \
|
||||||
--ks-key-alias "$ANDROID_KEY_ALIAS" \
|
--ks-key-alias "$ANDROID_KEY_ALIAS" \
|
||||||
--ks-pass pass:"$ANDROID_STORE_PASSWORD" \
|
--ks-pass pass:"$ANDROID_STORE_PASSWORD" \
|
||||||
@@ -248,7 +249,7 @@ jobs:
|
|||||||
echo "已签名: $signed_apk"
|
echo "已签名: $signed_apk"
|
||||||
|
|
||||||
# 验证签名
|
# 验证签名
|
||||||
"${ANDROID_SDK_ROOT}/build-tools/33.0.0/apksigner" verify "$signed_apk"
|
"$APKSIGNER" verify "$signed_apk"
|
||||||
|
|
||||||
# 删除未签名版本,重命名签名版本
|
# 删除未签名版本,重命名签名版本
|
||||||
rm "$apk"
|
rm "$apk"
|
||||||
|
|||||||
Reference in New Issue
Block a user