1name: Android Release
2
3on:
4 push:
5 tags:
6 - 'v*'
7
8jobs:
9 build:
10 name: Build & publish APK
11 runs-on: ubuntu-latest
12
13 steps:
14 - name: Checkout
15 uses: actions/checkout@v4
16
17 - name: Set up JDK 17
18 uses: actions/setup-java@v4
19 with:
20 java-version: '17'
21 distribution: 'temurin'
22
23 - name: Cache Gradle
24 uses: actions/cache@v4
25 with:
26 path: |
27 ~/.gradle/caches
28 ~/.gradle/wrapper
29 key: gradle-${{ hashFiles('android/**/*.gradle*', 'android/**/libs.versions.toml') }}
30 restore-keys: gradle-
31
32 - name: Decode keystore
33 run: |
34 echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 --decode > android/keystore.jks
35
36 - name: Build release APK
37 working-directory: android
38 env:
39 KEYSTORE_PATH: keystore.jks
40 KEYSTORE_PASSWORD: ${{ secrets.KEYSTORE_PASSWORD }}
41 KEY_ALIAS: ${{ secrets.KEY_ALIAS }}
42 KEY_PASSWORD: ${{ secrets.KEY_PASSWORD }}
43 run: ./gradlew assembleRelease --no-daemon
44
45 - name: Rename APK
46 run: |
47 VERSION="${GITHUB_REF_NAME}"
48 mv android/app/build/outputs/apk/release/app-release.apk \
49 android/app/build/outputs/apk/release/SophaxChat-${VERSION}.apk
50
51 - name: Create GitHub Release
52 uses: softprops/action-gh-release@v2
53 with:
54 files: android/app/build/outputs/apk/release/SophaxChat-*.apk
55 generate_release_notes: true
56 body: |
57 ## SophaxChat ${{ github.ref_name }} — Android
58
59 **Instalace:**
60 1. Stáhni `SophaxChat-${{ github.ref_name }}.apk`
61 2. Povol instalaci z neznámých zdrojů: Nastavení → Aplikace → Zvláštní přístup
62 3. Otevři APK a nainstaluj
63
64 **Požadavky:** Android 8.0+
65
66 > ⚠️ Alpha verze — kryptografie je solidní, ale kód nebyl nezávisle auditován.