我使用Android应用程序作为客户端,使用Ubuntu PC作为项目的服务器。我正在从我的android客户端向服务器发送视频文件。之后在服务器上我必须执行一组Python脚本,然后结果将作为文本数据发送到Android客户端。 我已经制作了一个Android应用程序,它将视频从Android设备发送到Ubuntu服务器,这是一个Xampp服务器(建议任何其他服务器,如果你觉得更好),但现在收到服务器端的文件后,我想通过在Server上自动执行一组Python脚本并返回结果。有谁可以帮助我谁可以告诉如何做这部分?
如果您欠服务器或可以修改用于上传视频的API,则问题可在服务器端解决。只需返回python脚本的结果作为对上传请求的响应。有关详细解答,请提供有关服务器软件的更多信息。
如果您无法修改服务器代码或希望从Android执行控制,我建议您考虑使用ssh
来实现此目的。例如,有一些支持ssh通信的第三方库,例如hierynomus/sshj。
ssh通信示例:
final SSHClient ssh = new SSHClient();
ssh.loadKnownHosts();
ssh.connect("your.server.host");
try {
ssh.authPublickey(System.getProperty("user.name"));
final Session session = ssh.startSession();
try {
final Command cmd = session.exec("python script.py");
String response = IOUtils.readFully(cmd.getInputStream()).toString();
cmd.join(5, TimeUnit.SECONDS);
} finally {
session.close();
}
} finally {
ssh.disconnect();
}