Я хотел бы отправлять HTTP-запросы из моего приложения для Android при нажатии кнопки на ESP8266, который ожидает доступа к любой веб-странице, однако я бы предпочел, чтобы мое приложение для Android фактически не открывало веб-страницу, а просто «отправляло HTTP Запрос"
Прямо сейчас использую;
startActivity(new Intent(Intent.ACTION_QUICK_VIEW, Uri.parse("http://192.168.1.201/onled")));
и он работает, но, очевидно, открывает веб-страницу ...
У кого-нибудь есть хорошее предложение, как решить мою проблему? Я новичок в java.




Вы должны создать HTTP-соединение и HTTP-запрос.
Сделать это можно несколькими способами:
HttpURLConnection, изначально доступный в Java - подробности см. в этом руководстве: https://www.mkyong.com/java/how-to-send-http-request-getpost-in-java/Помните, что отправка HTTP-запроса - это недетерминированная операция, и вы должны выполнять ее в отдельном потоке без пользовательского интерфейса, чтобы пользовательский интерфейс оставался разблокированным. Вы можете сделать это через AsyncTask, что является самым простым решением, но вы также можете использовать RxJava с RxAndroid или другими подходами.
ГРАММ...! Я знал, что задаю неправильный вопрос! Я посмотрю и на руководства, которые вы связали, и посмотрю, что у меня получится! Спасибо за ваш ответ
Есть много способов отправить HTTP-запросы из приложения. Например, используя HttpURLConnection с методом GET, вы можете действовать следующим образом:
StringBuilder content = new StringBuilder();
try {
URL u1 = new URL(url);
HttpURLConnection uc1 = (HttpURLConnection) u1.openConnection();
if (uc1.getResponseCode()==HttpURLConnection.HTTP_OK) {
InputStream is = uc1.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8")));
String line;
while ((line = br.readLine()) != null) {
content.append(line).append("\n");
}
}//other codes
Вы можете найти упрощенные способы сделать это с помощью самых изощренных методов Google:
new AsyncTask<Void,Void,Void>(){
private Exception exception;
@Override
protected Void doInBackground(Void... voids) {
try{
URL url= new URL("http://yourserveraddress/resource.extension");
HttpURLConnection con= (HttpURLConnection) url.openConnection();
//write additional POST data to url.getOutputStream() if you wanna use POST method
}catch (Exception ex){
this.exception=ex;
}
return null;
}
@Override
protected void onPostExecute(Void aVoid) {
super.onPostExecute(aVoid);
}
}.execute();
Вместо команды HTML, я думаю, вы ищете термин HTTP-запрос