Update main.yml #25
This file contains 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 Kivy APK | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
# Step 1: Checkout the code | |
- name: Checkout Code | |
uses: actions/checkout@v3 | |
# Step 2: Set up Python | |
- name: Set up Python | |
uses: actions/setup-python@v3 | |
with: | |
python-version: 3.12.3 # Use Python 3.10 to avoid compatibility issues with Buildozer | |
# Step 3: Install dependencies | |
- name: Install Buildozer and dependencies | |
run: | | |
sudo apt update | |
sudo apt install -y python3-pip python3-setuptools git zip openjdk-11-jdk build-essential libstdc++6 aidl | |
pip install --upgrade pip | |
pip install setuptools | |
pip install buildozer cython | |
- name: Install Android SDK and Build Tools | |
run: | | |
mkdir -p ~/.buildozer/android/platform/android-sdk | |
cd ~/.buildozer/android/platform/android-sdk | |
wget -q https://dl.google.com/android/repository/commandlinetools-linux-8512546_latest.zip -O commandlinetools.zip | |
unzip -q commandlinetools.zip -d cmdline-tools | |
mkdir -p cmdline-tools/latest | |
mv cmdline-tools/cmdline-tools/* cmdline-tools/latest/ | |
rm -rf commandlinetools.zip | |
yes | ~/.buildozer/android/platform/android-sdk/cmdline-tools/latest/bin/sdkmanager --licenses | |
yes | ~/.buildozer/android/platform/android-sdk/cmdline-tools/latest/bin/sdkmanager --sdk_root=~/.buildozer/android/platform/android-sdk "build-tools;36.0.0-rc3" "platform-tools" "platforms;android-33" | |
- name: Setup Android SDK | |
uses: android-actions/setup-android@v3 | |
# Step 4: Build the APK | |
- name: Build APK | |
run: | | |
yes | ~/.buildozer/android/platform/android-sdk/cmdline-tools/latest/bin/sdkmanager --licenses | |
buildozer -v android debug | |
# Step 5: Upload APK as an artifact | |
- name: Upload APK | |
uses: actions/upload-artifact@v3 | |
with: | |
name: kivy-app-debug.apk | |
path: bin/*.apk |