Приветствую.
Есть такой проект
Python-for-Android (P4A). Вкратце — возможность разрабатывать полноценные Android приложения на Python. Полноценные — значит такие, которые собираются в APK, могут быть залиты в Google Play Store и пользователи смогут установить у себя на устройствах, даже не ведая, что там внутри Python. Проект довольно старый, первый коммит датируется 2011-ым годом. Для того, чтобы все работало, они собирают собственную версию python, предварительно хорошенько пропатчив исходники, чтобы все собиралось и работало под Android.
Все это довольно сносно работало и работает, но только с Python 2. Python 3 долгое время им не давался — слишком большой объем изменений требовался, чтобы заставить его собираться под Android с его куцей libc (да и просто сборки недостаточно, надо чтобы еще это все работало). Так все и тянулось долгое время.
В декабре прошлого года мы выпустили
CrystaX NDK 10.3.0 с полноценной и стабильной сборкой Python (2 и 3) под Android. Стабильность эта обеспечивается а) хорошим соответствием POSIX в CrystaX NDK (что позволило собрать Python из upstream исходников, не поменяв в них ни единого байта) и б) регулярным автоматическим тестированием, ведущимся в рамках проекта. Все это оказалось очень кстати для P4A, поэтому пару недель назад был опубликован
анонс, сообщающий о начале поддержки Python 3 в P4A с помощью CrystaX NDK.
На данный момент есть планы по объединению усилий P4A и CrystaX NDK — мы будем обеспечивать им стабильную и протестированную базу, а они смогут сконцентрироваться на прикладной логике, не растрачивая зря силы на борьбу с Android. Очевидно, что это пойдет на пользу обоим проектам. Конечная же цель — сделать разработку на Python под Android не менее (а может и более) удобной, чем под GNU/Linux и/или Windows. Поэтому приглашаю всех заинтересованных воспользоваться плодами наших усилий. Ну и конечно же, любая помощь приветствуется!
Оба проекта полностью открытые (исходники на GitHub), с лицензиями, разрешающими свободное использование в любых проектах (в коммерческих в том числе).