2011-02-02 18 views
5

Quiero crear una actividad de Android para configurar una sesión SSH con un dispositivo remoto (a través de WiFi) y ejecutar algunos comandos de Linux en el dispositivo remoto. ¿Alguien tiene un ejemplo rápido y breve para conectar, autenticar y enviar comandos remotos usando las bibliotecas Trilead en Android? La fuente de Connectbot (el único lugar para encontrar la fuente de la biblioteca no mantenida) es bastante extensa y lleva mucho tiempo si solo intentamos hacer una rápida conexión SSH/ejecución de comandos. Encontré la biblioteca sshJ anteriormente, que tenía buenos ejemplos y consejos, pero lamentablemente Android carece de algunas clases Java.Util necesarias para sshJ.Código de ejemplo Android SSH

Busco algo en trilead como (este es el ejemplo SSHJ encontré anterior):

final SSHClient ssh = new SSHClient(); 
ssh.loadKnownHosts(); 

ssh.connect("localhost"); 
try { 
    ssh.authPublickey(System.getProperty("user.name")); 
    final Session session = ssh.startSession(); 
    try { 
     final Command cmd = session.exec("ping -c 1 google.com"); 
     System.out.print(cmd.getOutputAsString()); 
     System.out.println("\n** exit status: " + cmd.getExitStatus()); 
    } finally { 
     session.close(); 
    } 

} finally { 
    ssh.disconnect(); 
} 

Respuesta

2

Si estás bien con la restricción de su aplicación para Android 2.3 + (pan de jengibre), entonces se puede usa sshj. Deberá crear el objeto SSHClient con este Config.

+0

Saludos por la respuesta. Tendría que soportar al menos 2.2. – TanB