Операционная система Android, возможно, является одной из наиболее часто используемых операционных систем на мобильных устройствах сегодня, и она также очень эффективна благодаря своей связи с операционной системой Linux. В этой статье мы собираемся обсудить, как создать пример приложения для Android с помощью Python.
Так почему Python?
Мы знаем такие языки, как Java, Kotlin, такие фреймворки, как Xamarin, React Native, очень эффективны при создании приложений, но чаще всего системные администраторы лучше знакомы с использованием языков сценариев, таких как Python, для своих задач.
С Kivy они могут создавать минимальные приложения для Android для простых задач на своих устройствах Android без необходимости изменения синтаксиса. Да, все мы знаем, что Python не так быстр при разработке приложений, но кого волнует, выполняет ли он необходимую работу??
С его помощью вы можете быстро написать, например, скрипт очистки веб-страниц, скомпилировать его в приложение для Android и запускать его на ходу; это круто.
Для этого мы собираемся использовать библиотеку Python под названием Kivy. Kivy используется для создания кроссплатформенных мобильных приложений, поэтому он не обязательно для устройств Android, он также поддерживает создание программного обеспечения для iOS и Windows.
Установка Киви
Kivy очень легко установить, но все может пойти не так, если установленные зависимости начнут конфликтовать.
Чтобы установить Kivy, мы можем использовать команду «pip» для установки библиотек Python, а также «apt-get». Для работы Kivy у него много зависимостей, особенно когда вы пытаетесь использовать такие функции, как Камера, i.е., OpenCV или другая библиотека, например Pillow.
Однако вы можете выполнить простую установку Kivy.
Вы можете установить Kivy для Python 2 с помощью следующей команды:
sudo apt-get install python-kivyЗатем Kivy для Python 3 можно установить с помощью следующей команды:
sudo apt-get install python3-kivyЕсли вы собираетесь установить с помощью команды «pip», следующая команда выполнит эту работу:
pip install kivyЗатем можно установить одну очень популярную зависимость - pygame:
pip install pygameЕсли вы собираетесь установить зависимости на этом этапе, вы можете продолжить и установить.
Для Ubuntu 16.04:
sudo apt-get install python-setuptools python-pygame python-opengl \python-gst0.10.Чары на питоне gstreamer0.10-плагинов-хороших python-dev \
сборка-существенный python-пип libgl1-mesa-dev libgles2-mesa-dev zlib1g-dev
Если вы собираетесь установить для других версий Ubuntu, вы можете выполнить шаги из документации Github.
Прежде чем мы продолжим, вы можете подтвердить успешность установки Kivy, импортировав модуль из интерактивной оболочки.
>>> импортные кивы[ИНФОРМАЦИЯ] [Регистратор] Записать логин / data / user / 0 / ru.iiec.pydroid3 / app_HOME /.киви /
журналы / kivy_18-02-26_0.текст
[ИНФОРМАЦИЯ] [Киви] v1.9.2-dev0
[ИНФОРМАЦИЯ] [Python] v3.6.2 (по умолчанию, 15 октября 2017 г., 09:18:13)
[GCC 7.2.0]
>>>
Все, что вам нужно, это результат в этом формате; числа не должны совпадать.
Написание кода
Мы собираемся создать простое приложение, которое отображает текст на экране.
Создайте файл Python, который мы назвали бы «main.ру ». Этот файл будет иметь следующее содержимое:
из киви.приложение импорт приложениякласс HelloApp (приложение):
проходить
если __name__ == "__main__":
HelloApp ().запустить()
На первый взгляд кажется, что он ничего не делает, но мы рассмотрим то, что делает каждая строка кода.
из киви.приложение импорт приложенияЭто импортирует класс App из библиотеки kivy, которая помогает генерировать сам интерфейс приложения, кроме того, что у него есть много других свойств для поддержки создания приложения.
класс HelloApp (приложение):проходить
Это создает класс HelloApp, который наследуется от приложения, которое мы импортировали ранее; мы здесь мало что делаем, поскольку все, что мы сделали, это использовали ключевое слово «pass».
Таким образом, без ввода кода в нем есть все методы класса App.
если __name__ == "__main__":HelloApp ().запустить()
Затем мы проверяем, запускается ли скрипт Python напрямую или импортируется. Если он запускается напрямую, он выполняет метод run () унаследованного класса App, иначе ничего не происходит.
Мы почти закончили еще один файл. Это kv-файл, который мы будем использовать для нашей разметки.
Файл kv работает на языке kv, который имеет некоторое сходство по синтаксису с Python.
Просто создайте новый файл без имени и введите следующие строки кода.
Этикетка:текст:
«Подсказка о добро пожаловать в Linux»
Глядя на основные.py файла, мы бы заметили, что помните, что мы создали класс HelloApp (), который унаследован от App, и это был единственный класс.
В файле kv метка автоматически связывается с классами, созданными в файле python. «Метка» используется для отображения с помощью блочной модели.
Вопрос в том; как наш файл python знает, что этот файл имеет разметку? Он делает это через имя.
Поскольку в нашем классе HelloApp есть два разных слова, которые различаются заглавными буквами, ожидается, что kv-файл будет назван с первым словом, написанным маленькими буквами, а наш файл будет называться hello.кв.
Если наш класс называется LinuxApp или GameApp, наш kv-файл будет называться linux.кв и игра.кв соответственно.
Теперь вы можете запустить свой файл python:
основной питон.руВы должны получить сообщение «Добро пожаловать в Linux, подсказка».
Это лишь верхушка айсберга того, что вы можете делать с библиотекой Kivy; вы можете просмотреть полную документацию здесь, вы также можете ознакомиться с другими примерами.
Установка и использование Buildozer
Если вы следовали этой статье с самого начала, вы бы вспомнили, что при установке kivy нам пришлось учитывать множество зависимостей. С другой стороны, установка билдозера не так сложна.
Все, что мы будем делать, это клонировать файлы из репозитория GitHub, мы устанавливаем, а затем используем.
git clone https: // github.com / kivy / buildozer.мерзавецcd buildozer
sudo python2.7 настройка.py установить
Здесь python2.7 будет версией python, установленной в вашей системе; например, если у вас есть python 3.5 установлен вы используете Python3.5. Хотя некоторые люди утверждают, что у них есть проблемы с использованием buildozer с Python 3, вы можете попробовать, и если это не удастся, вы переключитесь на Python 2.
После установки вы запускаете код ниже. Как и в первом случае, Python2.7 можно изменить на любую версию Python, было бы разумно использовать версию python, которая использовалась для установки buildozer.
Это создает билдозер.spec файл, который содержит настройки конфигурации для нашего приложения. Хотя вы можете продолжить, не меняя конфигураций, вы можете проверить файл и изменить такие вещи, как имя приложения, имя пакета и т. Д.
Файл должен быть в таком формате:
# (str) Название вашего приложения
title = app
# (str) Имя пакета
упаковка.name = myapp
# (str) Домен пакета (необходим для упаковки android / ios)
упаковка.домен = организация.контрольная работа
… .
… .
После этого вы можете скомпилировать свое Android-приложение, как и в первых двух экземплярах, вы можете изменить python2.7 к версии Python, установленной на вашем компьютере.
python2.7 buildozer android отладка развернуть запуститьЕсли вы делаете это впервые, будут загружены необходимые файлы Android SDK, Android NDK и Android Ant, чтобы вы могли выпить чашку кофе, поскольку это может занять некоторое время в зависимости от скорости вашего интернет-соединения.
Когда buildozer завершает компиляцию приложения, он сохраняет его в каталоге bin.
Это все для этого урока; теперь вы можете создавать простые Android-приложения и запускать скрипты на вашем Android-устройстве.