首页 > 解决方案 > android 上的 HttpURLConnection 不适用于 24 级以下的 API

问题描述

我完成了我的应用程序,它运行良好。但是我需要在 API 22 和 24 级以下运行它,我不知道为什么我与其余 API 的连接不起作用。

URL url = new URL(requeteUrl[0]);
urlConnection = (HttpURLConnection) url.openConnection(); // Open

Log.d("TEST", ""+urlConnection.getHeaderFields());
InputStream in = new BufferedInputStream(urlConnection.getInputStream()); // Stream
result = readStream(in); // Read stream

我的日志显示我有一个代码 400,但我的网址很好。minSdkVersion 也设置为 21,所以这不是问题。

请给我一些帮助我不想为此购买新设备。感谢

编辑 :

我已经<uses-permission android:name="android.permission.INTERNET"/>在清单中了。

在 zeg 的帮助下,我为服务器的 TLS1.2 添加urlConnection.setSSLSocketFactory(new TLSSocketFactory());了内容,但没有任何变化。

标签: androidhttpurlconnection

解决方案


您是否在 Manifest.xml 中为您的应用程序设置了互联网使用权限,如此处所述https://developer.android.com/training/basics/network-ops/connecting


推荐阅读