Stack Overflow на русском Asked by some1 on August 30, 2021
Есть ли какие-либо способы заставить работать скрипт на python вместе с кодом Java на Android. Если да то какие? Интересует именно связка python и java. Библиотеки вроде kivy и прочие для разработки на python под Android только от безысходности.
Если способы все-таки есть, подскажите как грамотно связать код в Android Studio, если это имеет значение.
Тут есть два пути решения проблемы.
Первый, это использвоание библиотеки java, умеющей выполнять код питона. Самый известный пример это Jython. Но у такого подхода есть свои минусы. Например вы не сможете устанавливать библиотеки, частично написанные на C, и будет страдать скорость программ.
Второй, не побоюсь сказать более правильный, вариант - это связать Java и Python приложение через локальный сервер. Легче всего это сделать по REST API - обмен будет проводиться через JSON объекты. Очень быстро и удобно подобные сервера создаются на Flask-RESTful.
Создаете на локальном хосте (который почти всегда 127.0.0.1) и выбранном свободном порте RESTful сервер, который по обращению к нужной ссылке принимает JSON с нужными данными и отдает JSON с результатом
Со стороны Java надо сформировать JSON, отправить его по адресу https://<локальный хост>:<порт>/<путь>
, получить JSON с ответом сервера и взять оттуда результат. <путь> определяется на сервере и может быть любым. Более того по разным путям вы можете иметь разные сервисы, в то время как сервер поддерживающий их будет один.
И вот, в два шага, связка Java с Python (или с чем угодно еще) через сервер готова.
Answered by Егор Малько on August 30, 2021
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP