Set up apk signing
This commit is contained in:
parent
e6b16ce067
commit
de98676cd0
3 changed files with 49 additions and 24 deletions
52
.github/workflows/build.yml
vendored
52
.github/workflows/build.yml
vendored
|
|
@ -63,29 +63,37 @@ jobs:
|
||||||
target/release/tta-cli.exe
|
target/release/tta-cli.exe
|
||||||
target/release/tta-app.exe
|
target/release/tta-app.exe
|
||||||
|
|
||||||
# TODO: https://v2.tauri.app/distribute/sign/android/
|
build-android:
|
||||||
# build-android:
|
runs-on: ubuntu-latest
|
||||||
# runs-on: ubuntu-latest
|
steps:
|
||||||
# steps:
|
- name: Check out repo
|
||||||
# - name: Check out repo
|
uses: actions/checkout@v4
|
||||||
# uses: actions/checkout@v4
|
|
||||||
|
|
||||||
# - name: Set up pnpm
|
- name: Set up pnpm
|
||||||
# uses: pnpm/action-setup@v4
|
uses: pnpm/action-setup@v4
|
||||||
# with:
|
with:
|
||||||
# version: 10
|
version: 10
|
||||||
|
|
||||||
# # https://v2.tauri.app/start/prerequisites/#android
|
# https://v2.tauri.app/start/prerequisites/#android
|
||||||
# - name: Set up rust
|
- name: Set up Rust
|
||||||
# run: rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android
|
run: rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android
|
||||||
|
|
||||||
# - name: Build
|
# https://v2.tauri.app/distribute/sign/android/
|
||||||
# run: |
|
- name: Set up Android signing
|
||||||
# export NDK_HOME="$ANDROID_NDK_HOME"
|
run: |
|
||||||
# ./build_android
|
cd tta-app/src-tauri/gen/android
|
||||||
|
echo "keyAlias=${{ secrets.ANDROID_KEY_ALIAS }}" > key.properties
|
||||||
|
echo "password=${{ secrets.ANDROID_KEY_PASSWORD }}" >> key.properties
|
||||||
|
base64 -d <<< "${{ secrets.ANDROID_KEY_BASE64 }}" > $RUNNER_TEMP/keystore.jks
|
||||||
|
echo "storeFile=$RUNNER_TEMP/keystore.jks" >> key.properties
|
||||||
|
|
||||||
# - name: Upload
|
- name: Build
|
||||||
# uses: actions/upload-artifact@v4
|
run: |
|
||||||
# with:
|
export NDK_HOME="$ANDROID_NDK_HOME"
|
||||||
# name: tta-android
|
./build_android
|
||||||
# path: target/release/tta-app.apk
|
|
||||||
|
- name: Upload
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: tta-android
|
||||||
|
path: target/release/tta-app.apk
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,6 @@ pnpm tauri android build --apk
|
||||||
popd
|
popd
|
||||||
|
|
||||||
mkdir -p target/release/
|
mkdir -p target/release/
|
||||||
mv tta-app/src-tauri/gen/android/app/build/outputs/apk/universal/release/app-universal-release-unsigned.apk target/release/tta-app.apk
|
mv tta-app/src-tauri/gen/android/app/build/outputs/apk/universal/release/app-universal-release.apk target/release/tta-app.apk
|
||||||
|
|
||||||
echo "tta-app.apk can be found at target/release/tta-app.apk"
|
echo "tta-app.apk can be found at target/release/tta-app.apk"
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
import java.io.FileInputStream
|
||||||
import java.util.Properties
|
import java.util.Properties
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
|
|
@ -24,19 +25,35 @@ android {
|
||||||
versionCode = tauriProperties.getProperty("tauri.android.versionCode", "1").toInt()
|
versionCode = tauriProperties.getProperty("tauri.android.versionCode", "1").toInt()
|
||||||
versionName = tauriProperties.getProperty("tauri.android.versionName", "1.0")
|
versionName = tauriProperties.getProperty("tauri.android.versionName", "1.0")
|
||||||
}
|
}
|
||||||
|
signingConfigs {
|
||||||
|
create("release") {
|
||||||
|
val keystorePropertiesFile = rootProject.file("key.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
|
||||||
|
}
|
||||||
|
}
|
||||||
buildTypes {
|
buildTypes {
|
||||||
getByName("debug") {
|
getByName("debug") {
|
||||||
manifestPlaceholders["usesCleartextTraffic"] = "true"
|
manifestPlaceholders["usesCleartextTraffic"] = "true"
|
||||||
isDebuggable = true
|
isDebuggable = true
|
||||||
isJniDebuggable = true
|
isJniDebuggable = true
|
||||||
isMinifyEnabled = false
|
isMinifyEnabled = false
|
||||||
packaging { jniLibs.keepDebugSymbols.add("*/arm64-v8a/*.so")
|
packaging {
|
||||||
|
jniLibs.keepDebugSymbols.add("*/arm64-v8a/*.so")
|
||||||
jniLibs.keepDebugSymbols.add("*/armeabi-v7a/*.so")
|
jniLibs.keepDebugSymbols.add("*/armeabi-v7a/*.so")
|
||||||
jniLibs.keepDebugSymbols.add("*/x86/*.so")
|
jniLibs.keepDebugSymbols.add("*/x86/*.so")
|
||||||
jniLibs.keepDebugSymbols.add("*/x86_64/*.so")
|
jniLibs.keepDebugSymbols.add("*/x86_64/*.so")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
getByName("release") {
|
getByName("release") {
|
||||||
|
signingConfig = signingConfigs.getByName("release")
|
||||||
isMinifyEnabled = true
|
isMinifyEnabled = true
|
||||||
proguardFiles(
|
proguardFiles(
|
||||||
*fileTree(".") { include("**/*.pro") }
|
*fileTree(".") { include("**/*.pro") }
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue