Co naprawdę jest możliwe w Android, iOS i konsolach
Android jest dostępny wyłącznie poprzez eksperymentalną integrację społecznościową, nie jest akceptowany do głównego repozytorium python-for-android. iOS – przez narzędzie, które sam autor nazywa eksperymentalnym.
Rozdział 20.13 już udzieliła odpowiedzi w ogólnych kategoriach: Pygame nie jest publikowana na platformach mobilnych jako zespół. Tutaj możesz przeczytać więcej o tym, jak obie rzeczywiste ścieżki wyglądają w praktyce, a jak nie tylko że istnieją.
Android – python-for-android, Buildozer i eksperymentalne przepisy
python-for-android — to infrastruktura do pakowania
Python-aplikacji pod Android; na niej zwykle używa się Buildozer
— wyższej klasy narzędzie, które pobiera ustawienia z prostego
pliku konfiguracyjnego i uruchamia kompilację .apk za ciebie,
podłączając potrzebne przepisy. W momencie sprawdzania w głównym repozytorium
python-for-android nie ma przyjętego oficjalnego przepisu pygame-ce
— są tylko otwarte community pull request, dodające taki przepis, i przepisy użytkowników,
które można podłączyć ręcznie. Dlatego zwykła instalacja Buildozer sama w sobie
nie daje gotowego wsparcia pygame-ce:, zbudowanie APK z pygame-ce jest możliwe, podłączając jeden z tych
przepisów ręcznie (na przykład przez fork lub lokalny przepis custom-), ale jest to eksperymentalna,
a nie standardowa lub gwarantowanie wspierana integracja — kompatybilność należy sprawdzać
ponownie w momencie kompilacji i obowiązkowo testować na rzeczywistym urządzeniu. Proces w każdym
przypadku jest zauważalnie dłuższy niż pakowanie pod desktop (sekcja 20.29): potrzebny jest zestaw narzędzi
Android (Android SDK/NDK)), kompilacja zajmuje znacznie więcej czasu, a końcowy rozmiar
pliku jest wyraźnie większy niż sam kod gry — do środka APK zapakowane jest całe środowisko uruchomieniowe
Python.
iOS – poprzez pygame-ios, narzędzie eksperymentalne
Oprócz statusu samego narzędzia, publikacja na iOS wymaga komputerowego Mac (Xcode jest dostępny tylko na macOS), buildach i podpisach poprzez sam Xcode i, jak w każdej iOS- aplikacji, Płatne konto deweloperskie Apple. Narzędzie nie obsługuje każdej wersji pygame-ce — Specyficzna zgodność powinna być sprawdzana w dokumentacji narzędzi w momencie montażu, a nie Polegaj na pamięci z poprzedniego projektu.
| Android | iOS | |
|---|---|---|
| Tool | python-for-android + Buildozer (społeczność) | pygame-ios (społeczność, eksperymentalny) |
| Oficjalne wsparcie pygame-ce | Nie — przepis nie został przyjęty do głównego repozytorium | Tak |
| Gotowy do publikacji | Eksperymentalne składanie za pomocą community pull request lub custom-recept; wymaga sprawdzenia aktualnego statusu receptury i narzędzi | Autor opisuje jako niegotowy do produkcji |
| Odpowiedni system montażu | Windows, macOS czy Linux | Tylko macOS (potrzeba Xcode) |
| Format końcowy | .apk / .aab | Project Xcode →. ipa |
| Publikacja | Google Play | App Store potrzebujesz konta deweloperskiego Apple |
Konsole
Dla konsol do gier (sekcja 20.9) zauważalny, wspierany przez społeczność łańcuch pośredni
taki jak python-for-android nie istnieje. Publikacja na konsoli
pozostaje oddzielnym, zamkniętym procesem przez oficjalny SDK producenta — nie jest to związane
z wyborem Pygame konkretnie, tak samo zorganizowana jest publikacja gier napisanych w dowolnym narzędziu.