Tauri 项目编译 Android 安装包时 (tauri android build --apk (--target aarch64)
) 若无代码签名将会失败/apk 无法安装,需要配置签名:
可使用如下一键脚本
cd 到 tauri 项目目录,确保 Android 项目已经初始化了 (pnpm/cargo tauri android init
),then:
mkdir .android_key
keytool -genkey -v -keystore .android_key/upload-keystore.jks -keyalg RSA -keysize 2048 -validity 10000 -alias upload -keypass tauripass -storepass tauripass -dname CN=tauriapp
echo 'password=tauripass
keyAlias=upload
storeFile=../../../../.android_key/upload-keystore.jks
' > src-tauri/gen/android/keystore.properties
sed -i '1s/^/import java.io.FileInputStream\n/' src-tauri/gen/android/app/build.gradle.kts
sed -i '/buildTypes {/i \
signingConfigs { \
create("release") { \
val keystorePropertiesFile = rootProject.file("keystore.properties") \
val keystoreProperties = Properties() \
if (keystorePropertiesFile.exists()) { \
keystoreProperties.load(FileInputStream(keystorePropertiesFile)) \
} \
keyAlias = keystoreProperties["keyAlias"] as String \
keyPassword = keystoreProperties["password"] as String \
storeFile = file(keystoreProperties["storeFile"] as String) \
storePassword = keystoreProperties["password"] as String \
} \
}' src-tauri/gen/android/app/build.gradle.kts
sed -i '/isMinifyEnabled = true/a \
signingConfig = signingConfigs.getByName("release")' src-tauri/gen/android/app/build.gradle.kts
记得替换密码 (tauripass
)