В java jdk я создал сертификат SSL для сервера сокетов, используя keytool У меня есть приложение серверный сокет в позиции Прослушивание и сертификат, хранящийся на сервере приложений (P C Windows 10).
Как android клиент может подключиться с помощью сертификата к серверу windows 10?
какой метод я использую в android studio для создания сертификата и его тип с кодом, используемым в клиенте сокета. Код сокета сервера ниже (Windows 10):
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.lang.ClassNotFoundException;
import java.net.ServerSocket;
import java.net.Socket;
import javax.net.ssl.SSLServerSocketFactory;
public class ServerSSL {
private static ServerSocket server;
private static int port = 1004;
private static ObjectInputStream ois;
private static ObjectOutputStream oos;
private static Socket socket;
public static void main(String args[]) throws IOException, ClassNotFoundException {
ServerSocket server = ((SSLServerSocketFactory) SSLServerSocketFactory.getDefault()).createServerSocket(port);
Thread th = new Thread(new Runnable() {
@Override
public void run() {
Socket socket;
while (true) {
try {
socket = server.accept();
ois = new ObjectInputStream(socket.getInputStream());
oos = new ObjectOutputStream(socket.getOutputStream());
String message = "";
String recMsg = "";
try {
message = (String) ois.readObject();
switch (message) {
case "clientSend":
recMsg = (String) ois.readObject();
System.out.println(recMsg);
break;
}
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
});
th.start();
try {
ois.close();
oos.close();
socket.close();
server.close();
} catch (NullPointerException z) {
}
}
}