Простое соединение SSH с JSch
Я пытаюсь сделать что-то из этого простого примера:
SSH, выполнять удаленные команды с Android
Я просто хочу посмотреть, смогу ли я подключиться со своего телефона Android к серверу Linux, используя SSH, но это не работает ...
Вот мой основной код:
package com.example.ssh;
import java.util.Properties;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
import android.os.Bundle;
import android.app.Activity;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
try
{
JSch jsch = new JSch();
Session session = jsch.getSession("root","192.168.0.26", 22);
session.setPassword("xxxxx");
// Avoid asking for key confirmation
Properties prop = new Properties();
prop.put("StrictHostKeyChecking", "no");
session.setConfig(prop);
session.connect();
}
catch (Exception e)
{
System.out.println(e.getMessage());
}
}
}
Что я сделал не так ? У меня нет сообщений об ошибках, и я не вижу SSH-соединения в моем Linux. Я добавил библиотеки jsch и jzlib. У меня нет проблем соединиться с замазкой.
РЕДАКТИРОВАТЬ1: На самом деле я обнаружил ошибку, которая объясняет, почему она не работает, даже если я не знаю, как решить проблему. Ошибка:
android.os.NetworkOnMainThreadException
так что это означает, что приложение не может выполнять сетевые операции в своем основном потоке ...