Android - Получить коды состояния веб-страниц, открытых в браузере. - PullRequest
2 голосов
/ 08 января 2020

В настольных браузерах расширение может легко получить коды состояния веб-страниц, открытых в браузере. Под кодом состояния я имею в виду 200, 302, 404, 502 и т. Д. c ...

Коды статуса ответа HTTP

Response.status

Теперь скажите, что у нас есть приложение Android, которое похоже на расширение Chrome для рабочего стола. Это приложение открывает URL-ссылки не в WebView, а в браузере Android.

У меня такой вопрос, есть ли в приложении способ получить код состояния * 1016? * веб-страниц, открытых в браузере Android? Программно через Java, в течение Android времени выполнения ...?

Может быть просто способ получить их через Browser поставщика контента или через WebResourceResponse, и я изучаю это.

Я не имею в виду получение кода состояния страницы, загруженной в WebView. Уже существует вопрос о том, что:

Получить код состояния HTTP в Android WebView .

Я имею в виду получение кода состояния страница открыта в браузере Android. Как мы можем получить их?

Веб-контент

1 Ответ

2 голосов
/ 15 января 2020

Образец 1:

URL url = new URL("http://example.com");
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("GET");
connection.connect();
int code = connection.getResponseCode(); // show code result :)

Это ни в коем случае не надежный пример; вам нужно обработать IOExceptions и еще много чего. Но вам стоит начать.

Если вам нужно что-то с более широкими возможностями, посмотрите HttpClient .

Пример 2:

URL url = new URL("http://www.google.com/humans.txt");
HttpURLConnection http = (HttpURLConnection)url.openConnection();
int statusCode = http.getResponseCode(); // show result :)
...