name: Build for Android
on: [push]

jobs:
  build:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false

    steps:
    - uses: actions/checkout@v3

    - name: Set env
      run: if grep -Fxq "devel" cmd/go2tv/version.txt;then echo "GO2TV_VERSION=$(cat cmd/go2tv/version.txt)";else echo "GO2TV_VERSION=v$(cat cmd/go2tv/version.txt)";fi  >> $GITHUB_ENV

    - uses: WillAbides/setup-go-faster@v1.11.0
      id: setup-go-faster
      with:
        go-version: "*"

    - name: Install fyne
      run: go install fyne.io/fyne/v2/cmd/fyne@latest

    - name: Download Android SDK
      run: wget https://dl.google.com/android/repository/android-ndk-r23b-linux.zip && unzip android-ndk-r23b-linux.zip

    - name: Package (Android)
      run: APATH=$(readlink -e android-ndk-r23b) && cd cmd/go2tv && GO386='softfloat' ANDROID_NDK_HOME=$APATH fyne package -os android -name Go2TV -appID app.go2tv.go2tv -icon ../../assets/go2tv-icon-android.png && mv Go2TV.apk ../../

    - uses: actions/upload-artifact@v4
      with:
        name: go2tv_${{ env.GO2TV_VERSION }}_android
        path: |
          LICENSE
          README.md
          Go2TV.apk
        retention-days: 2
