Java 使用android应用程序在esp32 M5Stack摄像头上设置http设置

Java 使用android应用程序在esp32 M5Stack摄像头上设置http设置,java,android,url,esp32,Java,Android,Url,Esp32,我目前正在从事一个项目,我想从JPEG html流(由一个包含esp32芯片的M5Stack相机提供)中获取图像,以便在OpenCV中使用它们。之后,我想使用ImageView显示编辑过的图像。对于项目的开始,我跳过OpenCV的过程,直接显示它们。 我得到的问题,摩托罗拉Moto G5与API 27(只有一个测试) 我的问题是我无法设置所提供流的设置。我知道网址,但有几条建议对我不起作用。当我用浏览器调用URL时,一切都会正常工作。但是下面的代码抛出的异常对我没有帮助。此外,我无法连接到给定的

我目前正在从事一个项目,我想从JPEG html流(由一个包含esp32芯片的M5Stack相机提供)中获取图像,以便在OpenCV中使用它们。之后,我想使用ImageView显示编辑过的图像。对于项目的开始,我跳过OpenCV的过程,直接显示它们。 我得到的问题,摩托罗拉Moto G5与API 27(只有一个测试)

我的问题是我无法设置所提供流的设置。我知道网址,但有几条建议对我不起作用。当我用浏览器调用URL时,一切都会正常工作。但是下面的代码抛出的异常对我没有帮助。此外,我无法连接到给定的URL

用于将分辨率设置为值5的URL:

下面是最有希望但实际上不起作用的代码:

public void setResolution(final int resolutionI) {
    try {
            URL url = new URL(CAMERA_RESOLUTION + resolutionI);
            URLConnection urlConnection = url.openConnection();
            urlConnection.connect();
            urlConnection.setDoInput(true);

            BufferedReader in = newBufferedReader(newInputStreamReader(url.openStream()));
            String inputLine;
            while ((inputLine = in.readLine()) != null){
                Log.d("ControlCamera", inputLine);
            }
            in.close();

        } catch (IOException e) {
            e.printStackTrace();
            }
        }
}
例外情况:

W/System.err: java.net.ConnectException: Failed to connect to /192.168.4.1:80
W/System.err:     at com.android.okhttp.internal.io.RealConnection.connectSocket(RealConnection.java:143)
W/System.err:     at com.android.okhttp.internal.io.RealConnection.connect(RealConnection.java:112)
W/System.err:     at com.android.okhttp.internal.http.StreamAllocation.findConnection(StreamAllocation.java:184)
W/System.err:     at com.android.okhttp.internal.http.StreamAllocation.findHealthyConnection(StreamAllocation.java:126)
W/System.err:     at com.android.okhttp.internal.http.StreamAllocation.newStream(StreamAllocation.java:95)
W/System.err:     at com.android.okhttp.internal.http.HttpEngine.connect(HttpEngine.java:281)
W/System.err:     at com.android.okhttp.internal.http.HttpEngine.sendRequest(HttpEngine.java:224)
W/System.err:     at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:461)
W/System.err:     at com.android.okhttp.internal.huc.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:127)
W/System.err:     at com.westfalia.trailercommunication.ControlCamera$1.run(ControlCamera.java:100)
W/System.err:     at java.lang.Thread.run(Thread.java:764)

代码中可能有您没有提供的输入错误-
/192.168.4.1:80
不是有效的URL。否则,Java会给你一个非常糟糕的错误信息。三次检查您正在使用的URL或构建它的代码;它可能有一个额外的“/”在其中,或者是其他形式的错误。此外,只有与esp32所在网络直接通信的软件才能与其通信。如果您在从同一网络获取手机数据而不是wifi的手机上运行此应用程序,则该手机将无法与esp32通话。可能是您未提供的代码输入错误-
/192.168.4.1:80
不是有效的URL。否则,Java会给你一个非常糟糕的错误信息。三次检查您正在使用的URL或构建它的代码;它可能有一个额外的“/”在其中,或者是其他形式的错误。此外,只有与esp32所在网络直接通信的软件才能与其通信。如果您在从同一网络获取手机数据而不是wifi的手机上运行此应用程序,则该手机将无法与esp32通话。