Можно ли использовать Python для написания кроссплатформенных приложений для iOS и Android?

84

Можно ли использовать Python для написания кроссплатформенных приложений для iOS и Android?

user1404932
источник
@keyser меня не убедил выбранный ответ на этот вопрос, я думаю, что его можно использовать, и чтобы подтвердить, что я задал этот вопрос
user1404932
Это вообще изменилось?
Джонни
Является ли использование pyside , pyqtdeploy жизнеспособным вариантом в 2018 году?
desertSniper87

Ответы:

28

Для 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.

Рахил
источник
31
в этом и состоит цель Kivy ( kivy.org ) - это фреймворк для написания удобных для сенсорных приложений приложений на Python и их упаковки для различных платформ.
Некоторое
Kivy пока не поддерживает Python 3.3+ для iOS.
Iorek
78

Возможен вариант kivy : классная кроссплатформенная среда Python, которая работает для Android, Win7, Linux, MacOSX и iOS.

Обновление: проект kivy растет с каждым днем, теперь поддерживает также Raspberry Pi

Piertoni
источник
4

Для написания приложения с графическим интерфейсом вы можете использовать библиотеку Toga , а затем упаковать ее вместе с портфелем в приложение для Android и / или iOS (или Windows, Linux, macOS и т. Д.).

Примечание: проект все еще находится в стадии альфа-тестирования, но быстро развивается.

окупе
источник
2

Вы можете попробовать и совместить и . Вики Brython описывает, как написать приложение для Android с помощью Brython , которое может предоставить необходимую информацию для этого также с использованием Cordova. Я еще не тестировал это, но звучит многообещающе. Однако вы должны знать, что из-за своей природы Brython не может поддерживать пакеты, скомпилированные x86, такие как OpenCV (см., Например, здесь ). С другой стороны, если вы немного разбираетесь в JavaScript / HTML5, вы можете использовать собственные функции WebView, например http://www.brython.info/gallery/three.html .

Тобиас Кинцлер
источник
1

Как упоминалось в @piertoni, BeeWare позволяет писать собственные приложения для iOS и Android на Python.

Майкл
источник