1.) Я предполагаю, что этот вопрос не относится к вопросу WebView.Из вашего приложения вы можете создавать соединения с вашим сервером, используя java.net.Socket
или java.nio.channels.SocketChannel
.Я предпочитаю SocketChannel, так как он имеет некоторые функции, которых нет в базовом сокете (например, неблокирующий режим).
С этим классом довольно легко связаться с вашим сервером, например:
// this code has not been tested (!)
// Username and Password will be sent in a single string to the server, namely "username|password"
String username = "foo";
String password = "bar";
// Open Socket connection to the Server example.com at Port 12345
SocketChannel sock = SocketChannel.open(new InetSocketAddress("example.com", 12345));
// send user credentials to server
String data = username + "|" + password;
sock.write(ByteBuffer.wrap(data.getBytes()));
// await response from server
ByteBuffer result = ByteBuffer.allocate(8); // 8 byte-large container for result
fSocket.read(result);
// The first byte of the response decides wether login failed or succeeded (just as an example!)
if (result.get(0) == 1) {
// login succeeded
} else {
// login failed
}
Однако, если вы используете режим блокировки, я бы посоветовал переместить обработку соединения в свой собственный поток.Более подробную информацию о связи через сокеты см. В документации Socket и SocketChannel .
2.) Если страница не найдена, возможно, URL-адрес имеет неправильный формат?Здесь могут помочь некоторые детали.