Лучший способ заставить приложение Android выполнять скрипт Python на удаленном компьютере и возвращать строку вывода - PullRequest
0 голосов
/ 07 июля 2019

Я делаю приложение для Android для личного использования.Цель состоит в том, чтобы ввести данные на моем телефоне, отправить их в сценарий Python на моем ПК и вернуть выходные данные в виде строки.

Как лучше всего подключить его к моей Windows на ПК, запустить файл python и вернуть результат в виде простого вывода строки?

Ответы [ 2 ]

1 голос
/ 08 июля 2019

Вы можете использовать SSH для запуска команд на удаленном компьютере, для этого есть несколько библиотек в Java, например, вы можете использовать JSH Library

это простой пример:

public static String executeRemoteCommand(
                   String username,
                   String password,
                   String hostname,
                   int port) throws Exception {     

  JSch jsch = new JSch();
   Session session = jsch.getSession(username, hostname, 22);
   session.setPassword(password);

   // Avoid asking for key confirmation
   Properties prop = new Properties();
   prop.put("StrictHostKeyChecking", "no");
   session.setConfig(prop);

   session.connect();

   // SSH Channel
   ChannelExec channelssh = (ChannelExec) session.openChannel("exec");      
   ByteArrayOutputStream baos = new ByteArrayOutputStream();
   channelssh.setOutputStream(baos);

   // Execute command
   channelssh.setCommand("ls");
   channelssh.connect();        
   channelssh.disconnect();

   return baos.toString();
 }

Ссылка на ресурс: SSH, выполнение удаленных команд с Android

1 голос
/ 08 июля 2019

Пусть приложение напишет что-нибудь в Firebase, попросит скрипт Python отслеживать Firebase и отреагировать, а затем записать обратно в Firebase, которое отслеживает приложение

https://firebase.google.com/docs/android/setup

https://pypi.org/project/python-firebase/

https://firebase.google.com/docs/database

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...