Я новичок в разработке Android, и у меня был некоторый опыт работы с Java, C #, Python и т. Д. Python был моим любимым, я бы хотел с ним связать приложение Android.
Затем я увидел этот вопрос:
Есть ли способ запустить Python на Android?
Наиболее проголосовавшие ответы Kivy
и ASE
(теперь SL4A
и включает PY4A
).
Однако после некоторых Kivy
PY4A
я не смог найти никакой полезной информации о разнице между Kivy
и PY4A
. Поиск разницы между Kivy
и SL4A
тоже был бесплодным.
Итак, что касается Kivy
и PY4A
,
Может кто-нибудь объяснить, в простых терминах:
– Какое сходство и разница между ними?
– Каковы их хорошие и плохие детали?
– Есть ли другие хорошие альтернативы?
Смутно, есть два проекта под названием «python для android».
SL4A позволяет запускать скрипты python на Android. Их PY4A – это шаг в их инструментальной цепочке, но я мало знаю об этом. Я понимаю, что есть некоторая интеграция с android apis (вы можете использовать какое-то оборудование и т. Д.), Но ограничения в том, как запускать программы (они не полные приложения, не gui и т. Д.). Это то, что я делаю, когда вижу другие записи, я не пробовал, не задумываюсь о деталях. (Edit: на самом деле, похоже, есть возможность упаковать apks и несколько способов создания gui, я не знаю деталей)
Kivy – это графическая структура, которая поддерживает многие операционные системы (Linux, Windows, OSX, Android, iOS, может быть, уже уже). Вы используете его для создания guit python. Проект kivy также начал свой собственный проект python для Android, который предоставляет способы скомпилировать интерпретатор python для android и упаковать его в качестве реального приложения для Android (включая интеграцию java api с pyjnius и т. Д.). Kivy хорошо интегрирован с ним, так что вы можете легко скомпилировать приложение для python gui для Android, хотя я не думаю, что этот python-for-android ограничен приложениями kivy.
Таким образом, это совершенно разные проекты, в которых есть компонент с тем же именем. SL4A предназначен для запуска скриптов python на Android, я мало знаю о его ограничениях или деталях. Kivy – это графическая инфраструктура python (не ограничиваясь андроидом), которая может быть скомпилирована через свой собственный проект python для Android и полностью интегрирована с приложениями для Android.
Вы можете увидеть (например) витрину kivy для примеров некоторых простых возможностей киви или плоских драгоценностей на примере простой игры, сделанной в киви. Это всего лишь примеры, гораздо больше возможностей.
Я нашел это очень полезным (и последним):
Встраивание Python в Android (серия учебников)
http://techventura.wordpress.com/2014/04/21/embedding-python-in-android-series/
В нем описывается, как внедрить Python в Android-приложение, используя Kivy-связанный Python для Android, но не сам Kivy (который, как я уже нашел, не описан в документации Kivy или Python для Android) Который полезен в различных сценариях (например, существующее Java-приложение, напрямую использует собственный графический интерфейс и т. Д.),
Поскольку Python-for-Android от Kivy более активно развивается, чем Py4A SL4A (ASE), мне кажется, что это путь.
(Я думаю, что было бы очень актуально и, вероятно, более уместно, есть ли способ запуска Python на Android?, Но для ответа требуется большая репутация, чем у меня в настоящее время.)
К первому вопросу: самая важная разница, которую я вижу в Py4A от Kivy для Python-for-Android и SL4A (ASE), заключается в том, что последняя по-прежнему предлагается в качестве «альфа-качества», в то время как первая, похоже, далеко более активный. Конечно, если вы возьмете Kivy в целом, это кросс-платформенная библиотека графического интерфейса.
Кроме того, результаты моих исследований по различным решениям:
Вы пробовали QPython? Это новый python для экземпляра Android, который предлагает больше функций.