Можно ли использовать Python для написания кроссплатформенных приложений как для iOS, так и для Android?
Можно ли использовать Python для написания кроссплатформенных приложений как для iOS, так и для Android?
Ответы (5)
Для Android Google предоставляет нечто, называемое ASE (Android Scripting Environment), которое позволяет запускать языки сценариев (включая Python) на Android. Подробнее см. здесь
Для iOS это может быть немного сложнее (и я бы посоветовал проверить последнюю версию соглашения iOS SDK, чтобы проверить текущее состояние закона - Apple имеет тенденцию периодически разрешать и запрещать такие приложения). Что касается технической части, вам может потребоваться взаимодействие между Python и Objective C, а также некоторые волшебные действия, чтобы статически связать все библиотеки, необходимые Python; полная информация доступна здесь. Другой подход к разработке Python для iOS - встраивание интерпретатора Python в ваше приложение и распространение с ним вашего скрипта Python (чтобы хорошо играть с правилами Apple). В этом случае ваше приложение Python будет интерпретатором Python, который упакован с вашим скриптом и запускает его автоматически.
Второй вариант - использовать фреймворк Kivy (kivy.org) - фреймворк для написания сенсорных приложений на Python и их упаковки для различных платформ. Некоторое время у него была поддержка Android, а недавно добавлена поддержка iOS.
Возможный вариант - kivy: классная кроссплатформенная среда Python, которая работает для Android, Win7, Linux, MacOSX и iOS.
Обновление: проект kivy растет ежедневно, теперь поддерживает также Raspberry Pi
Для написания приложения с графическим интерфейсом вы можете использовать библиотеку Toga, а затем упаковать ее с помощью < href = "https://pybee.org/project/projects/tools/briefcase/" rel = "nofollow noreferrer"> портфель в приложение для Android и / или iOS (или Windows, Linux, macOS и т. д.) .
Примечание. проект все еще находится на стадии альфа-тестирования, но находится в стадии быстрой разработки.
Вы можете попробовать комбинировать brython и cordova. Вики Brython описывает как написать приложение для Android с помощью Brython, который может предоставить необходимую информацию для этого, также используя Cordova. Я еще не тестировал это, но звучит многообещающе. Однако вы должны знать, что по своей природе Brython не может поддерживать пакеты, скомпилированные x86, такие как OpenCV (см., Например, здесь) . С другой стороны, если вы немного знаете о JavaScript / HTML5, вы можете использовать собственные функции WebView, например http://www.brython.info/gallery/three.html.
Как упоминал @piertoni, BeeWare позволяет писать собственные приложения для iOS и Android на Python.