Build Android APK #1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Build Android APK | |
| on: | |
| push: | |
| tags: | |
| - 'v*' # Si attiva automaticamente quando crei un tag di versione (es. v1.1.2c-3) | |
| workflow_dispatch: # Ti permette di far partire il build manualmente dalla scheda "Actions" su GitHub | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout del codice | |
| uses: actions/checkout@v4 | |
| - name: Configura Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-cache: 'npm' | |
| # MODIFICATO QUI: Aggiornato java-version a '21' per risolvere il problema del compilatore | |
| - name: Configura Java JDK 21 | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'zulu' | |
| java-version: '21' | |
| - name: Configura Android SDK | |
| uses: android-actions/setup-android@v3 | |
| - name: Installa le dipendenze | |
| run: npm install | |
| - name: Build del progetto Web (Vite) | |
| run: npm run build | |
| - name: Inizializza e Sincronizza Capacitor Android | |
| run: | | |
| if [ ! -d "android" ]; then | |
| echo "Cartella android non trovata. Inizializzazione in corso..." | |
| npx cap add android | |
| else | |
| echo "Cartella android già presente. Salto l'aggiunta." | |
| fi | |
| npx cap sync | |
| - name: Build dell'APK (Gradle Debug) | |
| run: | | |
| cd android | |
| chmod +x gradlew | |
| ./gradlew assembleDebug | |
| - name: Carica l'APK come Artefatto | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: CodeLearn-BETA-APK | |
| path: android/app/build/outputs/apk/debug/app-debug.apk | |
| - name: Crea la Release su GitHub (Opzionale) | |
| if: startsWith(github.ref, 'refs/tags/') | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| files: android/app/build/outputs/apk/debug/app-debug.apk | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |