Files
anroid-CheckShot/create-signing.sh

83 lines
2.2 KiB
Bash
Raw Normal View History

#!/bin/bash
# 创建Android应用签名文件并生成Base64字符串
echo "=== Android应用签名生成工具 ==="
echo ""
# 检查keytool是否可用
if ! command -v keytool &> /dev/null; then
echo "❌ keytool命令未找到请安装Java JDK"
exit 1
fi
# 签名配置
KEYSTORE_NAME="logcam-release.jks"
ALIAS="logcam-release-key"
STORE_PASS="android123"
KEY_PASS="android123"
DNAME="CN=LogCam, OU=Development, O=Example, L=Beijing, ST=Beijing, C=CN"
echo "📋 签名配置:"
echo " - 密钥库文件: $KEYSTORE_NAME"
echo " - 别名: $ALIAS"
echo " - 密钥库密码: $STORE_PASS"
echo " - 密钥密码: $KEY_PASS"
echo ""
# 生成签名文件
echo "🔑 生成签名文件..."
keytool -genkeypair -v \
-keystore "$KEYSTORE_NAME" \
-keyalg RSA -keysize 2048 \
-validity 10000 \
-alias "$ALIAS" \
-storepass "$STORE_PASS" \
-keypass "$KEY_PASS" \
-dname "$DNAME"
if [ $? -eq 0 ]; then
echo "✅ 签名文件生成成功: $KEYSTORE_NAME"
ls -la "$KEYSTORE_NAME"
else
echo "❌ 签名文件生成失败"
exit 1
fi
echo ""
echo "🔄 生成Base64字符串..."
# 生成Base64字符串
SIGNING_KEY_BASE64=$(base64 -w 0 "$KEYSTORE_NAME")
if [ $? -eq 0 ]; then
echo "✅ Base64字符串生成成功"
else
echo "❌ Base64转换失败"
exit 1
fi
echo ""
echo "📋 GitHub Secrets配置信息:"
echo "========================================"
echo "SIGNING_KEY (密钥文件Base64):"
echo "$SIGNING_KEY_BASE64"
echo "========================================"
echo ""
echo "ALIAS (别名): $ALIAS"
echo "KEYSTORE_PASSWORD (密钥库密码): $STORE_PASS"
echo "KEY_PASSWORD (密钥密码): $KEY_PASS"
echo "========================================"
echo ""
echo "📱 后续步骤:"
echo "1. 访问 https://github.com/xiajid/logcam/settings/secrets/actions"
echo "2. 创建以下Secrets:"
echo " - SIGNING_KEY: 粘贴上面的Base64字符串"
echo " - ALIAS: \"$ALIAS\""
echo " - KEYSTORE_PASSWORD: \"$STORE_PASS\""
echo " - KEY_PASSWORD: \"$KEY_PASS\""
echo "3. 提交新工作流文件"
echo "4. 触发构建获得签名版APK"
echo ""
echo "🔧 签名文件信息:"
keytool -list -v -keystore "$KEYSTORE_NAME" -storepass "$STORE_PASS" | grep -E "别名|有效期|指纹"
echo ""
echo "✅ 签名流程完成"