以下是我的代码,其中显示弃用NameValuePair
,BasicNameValuePair
,HttpParams
,HttpClient
,DefaultHttpClient
,HttpPost
,UrlEncodedFormEntity
如何解决这个问题..?
下面的代码段
ArrayList<NameValuePair> dataTosend = new ArrayList<>();
dataTosend.add(new BasicNameValuePair("image" , encodedImage));
dataTosend.add(new BasicNameValuePair("name" , name));
HttpParams httpRequestParams = getHttpRequestParams();
HttpClient client = new DefaultHttpClient(httpRequestParams);
HttpPost post = new HttpPost(SERVER_ADDRESS + "savepicture.php");
try{
post.setEntity(new UrlEncodedFormEntity(dataTosend));
client.execute(post);
}
catch (Exception e){
e.printStackTrace();
}
return null;
}
}
答案 0 :(得分:0)
从Android6.0中删除它,如果你想使用它,那么在build.gradle中添加它
android {
useLibrary 'org.apache.http.legacy'
}
但请尝试使用HttpUrlConnection
,请参阅official doc
Android 6.0版本删除了对Apache HTTP客户端的支持。如果 您的应用正在使用此客户端并定位到Android 2.3(API级别9)或 更高,请改用HttpURLConnection类。这个API更多 高效,因为它通过透明减少网络使用 压缩和响应缓存,并最大限度地降低功耗。至 继续使用Apache HTTP API,您必须先声明 跟随build.gradle文件中的编译时依赖项: