2011-02-02 27 views
5

Desidero creare un'attività Android per configurare una sessione SSH con un dispositivo remoto (tramite Wi-Fi) ed eseguire alcuni comandi linux sul dispositivo remoto. Qualcuno ha avuto un breve, breve esempio per la connessione, l'autenticazione e l'invio di comandi remoti usando le librerie in Android? La fonte Connectbot (l'unico posto in cui trovare la fonte per la libreria non mantenuta) è piuttosto lunga e lunga da percorrere se si sta solo tentando di eseguire una rapida esecuzione SSH di connessione/comando. Avevo trovato la libreria sshJ in precedenza, che aveva esempi e suggerimenti ben documentati, ma sfortunatamente Android non ha alcune classi Java.Util richieste per sshJ.Codice di esempio SSH Android

Sto cercando qualcosa in tripiombo simile (questo è l'esempio sshJ ho trovato in precedenza):

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(); 
} 

risposta

2

Se siete daccordo con restringendo la tua app per Android 2.3 (Gingerbread), allora si può usa sshj. Dovrai creare l'oggetto SSHClient con questo Config.

+0

Cheers per la risposta. Dovrei supportare almeno 2.2. – TanB