Найти тему
Katsysiro

Создание мобильного приложения с Kivy Python Framework. Часть 6

Оглавление

Это продолжение, остальные статьи:


Пришло время собрать ваше приложение!

Упаковка вашего приложения для Android

Теперь, когда вы закончили код для своего приложения, вы можете поделиться им с другими. Отличный способ сделать это - превратить ваш код в приложение, которое может работать на вашем телефоне Android. Для этого сначала вам нужно установить пакет buildozer при помощи pip:

$ pip install buildozer

Затем создайте новую папку и перейдите к ней в своем терминале. Когда вы окажетесь там, вам нужно будет выполнить следующую команду:

$ buildozer init

Это создаст файл buildozer.spec, который вы будете использовать для настройки вашей сборки. В этом примере вы можете отредактировать первые несколько строк файла спецификации следующим образом:

[app]
# (str) Title of your application
title = KvCalc
# (str) Package name
package.name = kvcalc
# (str) Package domain (needed for android/ios packaging)
package.domain = ru.kvcalc

Не стесняйтесь просматривать остальную часть файла, чтобы увидеть, что еще вы можете изменить.

На этом этапе вы почти готовы к созданию приложения, но сначала вам нужно установить зависимости для buildozer. После того, как они установлены, скопируйте приложение калькулятора в новую папку и переименуйте его в main.py. Это требуется buildozer. Если у вас нет правильного имени файла, сборка завершится неудачно.

Теперь вы можете запустить следующую команду:

$ buildozer -v android debug

Процесс сборки занимает много времени! На моей машине это заняло от 15 до 20 минут. В зависимости от вашего оборудования, это может занять больше времени, поэтому не стесняйтесь взять чашку кофе или пробежаться, пока вы ждете. Buildozer загрузит все компоненты Android SDK, необходимые для процесса сборки. Если все идет по плану, в вышей папке появится папка bin. В ней должен появится файл с именем kvcalc-0.1-debug.apk или что-то похожее.

Следующим шагом является подключение телефона Android к компьютеру и копирование apk файла на него. Затем вы можете открыть браузер файлов на вашем телефоне и нажать на apk файл. Android должен спросить вас, хотите ли вы установить приложение. Может появиться предупреждение, поскольку приложение было загружено из-за пределов Google Play, но вы все равно сможете его установить.

Вот калькулятор, работающий на моем устройстве:

-2

У buildozer есть несколько других команд, которые вы можете использовать. Проверьте документацию, чтобы увидеть, что еще вы можете сделать.

Вы также можете упаковать приложение, используя, python-for-android если вам нужно более детальный контроль. Я не буду освещать это здесь, но если вам интересно, посмотрите краткий старт проекта.

И ещё нюанс. К сожалению на момент написания статьи buildozer не поддерживает сборку android на windows.

Упаковка вашего приложения для iOS

Инструкции по созданию приложения для iOS немного сложнее, чем для Android. Для получения самой последней информации вы всегда должны использовать официальную упаковочную документацию Kivy . Вам нужно будет выполнить следующие команды, прежде чем вы сможете упаковать свое приложение для iOS на вашем Mac:

$ brew install autoconf automake libtool pkg-config
$ brew link libtool
$ sudo easy_install pip
$ sudo pip install Cython==0.29.10

Как только все они будут успешно установлены, вам нужно скомпилировать дистрибутив, используя следующие команды:

$ git clone git://github.com/kivy/kivy-ios
$ cd kivy-ios
$ ./toolchain.py build python3 kivy

Если вы получили сообщение об ошибке «iphonesimulator can’t be found», обратитесь к ответу StackOverflow, чтобы узнать, как решить эту проблему. Затем попробуйте снова выполнить вышеуказанные команды.

Если вы столкнетесь с ошибками SSL, то у вас, вероятно, нет установки OpenSSL в Python. Эта команда должна исправить это:

$ cd /Applications/Python\ 3.7/
$ ./Install\ Certificates.command

Теперь вернитесь и попробуйте снова выполнить команду toolchain .

После того, как вы успешно выполнили все предыдущие команды, вы можете создать свой проект XCode, используя toolchain скрипт. Точка входа вашего основного приложения должна быть названа main.py перед созданием проекта XCode. Вот команда, которую вы запустите:

./toolchain.py create <title> <app_directory>

Там должен быть каталог с именем title вашего проекта Xcode в нем. Теперь вы можете открыть этот проект в Xcode и работать над ним оттуда. Обратите внимание: если вы хотите подать заявку в App Store, вам нужно будет создать учетную запись разработчика на developer.apple.com и оплатить ее ежегодную плату.

Упаковка вашего приложения для Windows

Вы можете упаковать свое приложение Kivy для Windows, используя PyInstaller.

Вы можете установить PyInstaller, используя pip:

$ pip install pyinstaller

Следующая команда упакует ваше приложение:

$ pyinstaller main.py -w

Эта команда создаст исполняемый файл Windows и несколько других файлов. -w Аргумент говорит PyInstaller , что это оконное приложение, а не приложение командной строки. Если вы хотите, чтобы PyInstaller создавал один исполняемый файл, вы можете передать --onefile аргумент в дополнение к -w. Файл должен появится в папке dist.

Упаковка вашего приложения для macOS

Вы можете также использовать PyInstaller для создания исполняемого файла Mac, как вы это делали для Windows. Единственное требование - вы должны запустить эту команду на Mac:

$ pyinstaller main.py -w --onefile

Это создаст один исполняемый файл в папке dist. Исполняемый файл будет иметь то же имя, что и файл Python, который вы передали PyInstaller. Если вы хотите уменьшить размер файла исполняемого файла или используете GStreamer в своем приложении, то посетите страницу упаковки Kivy для macOS для получения дополнительной информации.

Вывод

Kivy - это действительно интересный графический интерфейс, который вы можете использовать для создания пользовательских интерфейсов и мобильных приложений для настольных компьютеров как на iOS, так и на Android. Приложения Kivy не будут выглядеть как родные приложения на любой платформе. Это может быть преимуществом, если вы хотите, чтобы ваше приложение выглядело и отличалось от конкурентов!

В этом руководстве вы изучили основы Kivy, в том числе способы добавления виджетов, подключения событий, размещения нескольких виджетов и использования языка KV. Затем вы создали свое первое приложение Kivy и узнали, как его распространять на другие платформы, включая мобильные!

Существует множество виджетов и концепций о Kivy, которые мы здесь не освещали, поэтому обязательно посетите веб-сайт Kivy, где вы найдете учебные пособия, примеры приложений и многое другое.

Дальнейшее чтение

Чтобы узнать больше о Kivy, ознакомьтесь с этими ресурсами:

Если вам понравилось подписывайтесь на канал, ставьте лайки, комментируйте!