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

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

6 ответов

Решение

Для Android Google предлагает что-то под названием ASE (Android Scripting Environment), которое позволяет языкам сценариев (включая Python) работать на Android. Подробнее здесь

Для iOS это может быть немного сложнее (и я бы посоветовал проверить последнюю версию соглашения iOS SDK, чтобы проверить текущее состояние закона - Apple имеет тенденцию периодически разрешать и запрещать такие приложения). Для технической части вам может потребоваться взаимодействие между Python и Objective C, а также выполнить некоторые действия, чтобы статически связать все библиотеки, необходимые Python; полная информация доступна здесь. Еще один подход к разработке на Python для iOS заключается в том, чтобы встроить интерпретатор Python в ваше приложение и распространять с ним ваш скрипт Python (так, чтобы хорошо играть по правилам Apple). В этом случае ваше приложение Python будет интерпретатором Python, который упакован вместе с вашим сценарием и запускает его автоматически.

Второй вариант - использовать Kivy Framework(kivy.org) - это среда для написания сенсорных приложений на Python и их упаковки для разных платформ. У него была поддержка Android на некоторое время, а недавно добавлена ​​поддержка iOS

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

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

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

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

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

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

Есть FireMonkey (FMX).

FMX — довольно новый фреймворк для разработки кроссплатформенных приложений с использованием Python, но я могу честно сказать, что он лучший из доступных на данный момент!

Это намного лучше, чем все другие фреймворки Python с графическим интерфейсом. С FMX вы можете разрабатывать с использованием единой базы кода для Windows, MacOS, Android и Linux.

iOS пока не поддерживается, но это планируется сделать в ближайшем будущем.

Я думаю, что за FMX стоит следить.

Другие вопросы по тегам