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)
使用--split-per-abi参数为每个目标平台生成单独的软件包,比统一安装包小许多
1
npm run tauri android build -- --apk --split-per-abi --target aarch64
3. openssl编译错误
1 2
warning: openssl-sys@0.9.112: Could not find directory of OpenSSL installation, and this `-sys` crate cannot proceed without this knowledge. If OpenSSL is installed and this crate had trouble finding it, you can set the `OPENSSL_DIR` environment variable for the compilation process. See stderr section below for further information. error: failed to run custom build commandfor `openssl-sys v0.9.112`
设置OPENSSL_DIR也无用,在Cargo.tml中设置
1 2
[dependencies] openssl = { version = "0.10.71", features = ["vendored"] }