У меня есть сценарий Python, который безупречно работает при выполнении в среде Python и отображает ожидаемый пользовательский интерфейс с кнопкой и меткой. Однако я сталкиваюсь с трудностями при попытке скомпилировать его в Android APK с помощью Buildozer в Google Colab.
Чтобы решить эту проблему, я позаботился о том, чтобы использовать самые последние версии Colab, но для устранения неполадок я начал с упрощения моего исходного приложения (которое здесь не представлено) до базового приложения, включенного в этот пост. Мое намерение состояло в том, чтобы начать с основ и постепенно расширять функциональность. Однако даже с этим базовым приложением, которым я делюсь здесь, мне не удается его успешно скомпилировать. Я подозреваю, что проблема кроется в файле buildozer.spec, которым я также делюсь в этом посте.
Мне нужна помощь и идеи сообщества, чтобы выявить и решить проблемы, с которыми я столкнулся при компиляции моего скрипта Python Kivy в APK с помощью Buildozer в Google Colab. Мы будем очень признательны за любые рекомендации по устранению неполадок с файлом buildozer.spec.
from kivy.app import App
from kivy.uix.screenmanager import ScreenManager, Screen
# Main Screen Class
class MainScreen(Screen):
pass
# Screen Manager
class ScreenManagement(ScreenManager):
pass
# Main Application Class
class BasicApp(App):
def build(self):
return ScreenManagement()
# Main execution of the application
if __name__ == '__main__':
BasicApp().run()
# buildozer.spec
[app]
title = Basic Kivy App
package.name = basicapp
package.domain = net.aesencryptornl
source.dir = .
source.include_exts = py,png,jpg,kv,atlas
requirements = python3,kivy
version = 0.1
orientation = portrait
[buildozer]
log_level = 2
warn_on_root = 1
[buildozer.android]
fullscreen = 0
android.api = 30
android.minapi = 21
android.ndk = 19b
android.sdk = 24
android.entrypoint = org.kivy.android.PythonActivity
android.manifest.theme = @android:style/Theme.NoTitleBar
android.update_sdk = True
android.javac_target = 1.8
# commands I used in Google Colab
# Install Buildozer
!pip install buildozer
# Install Cython (Version 3.0.6 used, originally tried cython==0.29.19)
!pip install cython==3.0.6
# Update package lists
!sudo apt-get update
# Install required packages
!sudo apt-get install -y \
python3-pip \
build-essential \
git \
python3 \
python3-dev \
ffmpeg \
libsdl2-dev \
libsdl2-image-dev \
libsdl2-mixer-dev \
libsdl2-ttf-dev \
libportmidi-dev \
libswscale-dev \
libavformat-dev \
libavcodec-dev \
zlib1g-dev
!sudo apt-get install -y \
libgstreamer1.0 \
gstreamer1.0-plugins-base \
gstreamer1.0-plugins-good
!sudo apt-get install build-essential libsqlite3-dev sqlite3 bzip2 libbz2
!sudo apt-get install libffi-dev
# Upload project files
from google.colab import files
uploaded = files.upload()
# Build the Android APK with Buildozer
!buildozer -v android debug