Obserwuję to jak zbudować aplikację na Androida w językach Python3 i Qt5. Prawie wszystko działa dobrze, ale jakoś nie mogę się dowiedzieć, jak ustawić ikonę aplikacji. W dokumentacji też nic nie znalazłem.
A jeśli mimo wszystko znasz PyQtDeploy. Jak ustawić tryb budowania z debug
na release
?
Tło:
pyqtdeploy-build
tworzy cały folder kompilacji dla Androida (który zawiera wszystkie zasoby i AndroidManifest.xml
) od podstaw. Do tej pory nie znalazłem sposobu, aby stwierdzić, której ikony użyć. Spodziewałbym się opcji w interfejsie pyqtdeploy, ale wydaje się, że jej nie ma.
2 odpowiedzi
Edytuj
Nigdy tego nie próbowałem, ale @Fred w powyższym komentarzu w ten sposób w Qt Creator - może to zadziała
Edytuj koniec
PyQtDeploy jest przeznaczony do zarządzania kodem i zasobami w języku Python. Ikona aplikacji jest frameworkiem Androida, więc musisz to zrobić w sposób Android - utwórz zasób w folderze res
i odwołaj się do niego w Android manifest
.
Możesz jednak zautomatyzować ten proces - możesz stworzyć prosty skrypt bash, który zrobi to, lub jeszcze jeden skrypt budujący Pythona w tym samym celu - pobiera ikonę z Twojej lokalizacji, przenosi ją do folderu res
i zmienia poprzednio wygenerowany manifest z poprawne odniesienie w postaci android:icon="@drawable/your_logo_name"
.
Przynajmniej tak to robiłem.
Zalecamy - jeśli chcesz używać Pythona do programowania w systemie Android (i na różnych platformach), użyj narzędzia Kivy jest znacznie bardziej dojrzały, możliwy do wsparcia i kompletny z dużo większą społecznością. Jest znacznie szybszy i ma również więcej bibliotek.
Mam nadzieję, że to pomoże.
W systemie Android można znaleźć jeden folder res name, jeśli nie, utworzyć go i odwołać się do pliku manifestu.
Teraz musisz umieścić ikonę w folderze do rysowania, który znajduje się w folderze res
Twoja ścieżka wygląda następująco: res >>>> drawable >>> icon.png
W przypadku Kivy stało się to dwukrotnie łatwiejsze
Ścieżka do ikony musi być bezwzględna lub względna w stosunku do pliku aplikacji. Więc jeśli struktura katalogów wygląda następująco:
My_app / ├── app.py └── rzeczy └── obrazy └── my_icon.png
class MyApp:
def build(self):
self.icon = r'C:\Users\you\path\to\my_app\things\images\my_icon.png'
self.icon = r'things\images\my_icon.png'
Podobne pytania
Powiązane pytania
Nowe pytania
python
Python to wielozadaniowy, wielozadaniowy język programowania dynamicznie typowany. Został zaprojektowany tak, aby był szybki do nauczenia się, zrozumienia i użycia oraz wymuszania czystej i jednolitej składni. Należy pamiętać, że Python 2 oficjalnie nie jest obsługiwany od 01-01-2020. Mimo to, w przypadku pytań Pythona specyficznych dla wersji, dodaj znacznik [python-2.7] lub [python-3.x]. Korzystając z wariantu Pythona (np. Jython, PyPy) lub biblioteki (np. Pandas i NumPy), należy umieścić go w tagach.