//上传数据
public void upload_Data(String jsons) {
// String categoryNo = "";
// String CategoryName = "";
// String location_no = "";
// JSONObject jsonObject = new JSONObject();
// jsonObject.put("userNo", "003");
// jsonObject.put("categoryNo", "");
// jsonObject.put("categoryName", "");
// jsonObject.put("locationName", "广州");
// String json = "";
showProgressDialog("提示", "正在上传,请稍等......");
// System.out.println("测试jsons:" + jsons);
new Thread() {
@Override
public void run() {
//创建okhtto请求的对象
try {
String result="";
String filePath =getSavePath()+"/data_task.txt";
// uploadTest1(jsons,"http://"+ipAddress+":"+port+"/demo/uploadFileHandheldTxt",urls,"transcript.txt");
createFile();//创建
writeTxt(getSavePath()+"/data_task.txt",jsons);//写入数据
// String filestrUrl=getSavePath()+"/transcript.txt";
// String path = "http://192.168.1.108:8080/demo/uploadFileHandheldTxt";
// String path = "http://"+ipAddress+":"+port+"/demo/uploadFileHandheldTxt";
// 手机端要上传的文件,首先要保存你手机上存在该文件
// AsyncHttpClient httpClient = new AsyncHttpClient();
// RequestParams param = new RequestParams();
String SERVER_URL = "http://"+server_ipAddress+":"+server_port+"/demo/uploadFileTaskHandheldTxt";
// 创建OkHttpClient对象
OkHttpClient client = new OkHttpClient().newBuilder().connectTimeout(60000, TimeUnit.MILLISECONDS)
.readTimeout(60000,TimeUnit.MILLISECONDS).build();
// client.connectTimeoutMillis();
// client.callTimeoutMillis();
// String SERVER_URL = "http://" + ipAddress + ":" + port + "/demo/uploadFileScanningHandheld";
//
// Response response= FileUtil.getResponse(HomeBatchActivity.this,SERVER_URL,jsons);
MediaType mediaType=MediaType.Companion.parse("text/plain;charset=utf-8");
File file=new File(filePath);
RequestBody fileBody=RequestBody.Companion.create(file,mediaType);
RequestBody requestBody=new MultipartBody.Builder().setType(MultipartBody.FORM).addFormDataPart("file",file.getName(),fileBody).build();
// 创建请求对象
Request request = new Request.Builder()
.url(SERVER_URL)
.post(requestBody)
.build();
// 发送请求
Response response = client.newCall(request).execute();
// System.out.println("测试获取返回结果:"+response.code());
// // 获取返回结果
if (response.isSuccessful()) {
result= response.body().string();
System.out.println("测试获取返回结果:"+result);
} else {
result= "";
}
// int code = response.code();
int code = 200;
// System.out.println("获取2返回结果测试code:"+code);
if (code == 200) {
hideProgressDialog();
/**
* 如果获取的code为200,则证明数据获取是正确的。
// */
// 获取返回结果
// if (response.isSuccessful()) {
// result= response.body().string();
// System.out.println("获取2返回结果测试:"+result);
// } else {
// result="";
// }
// InputStream is = conn.getInputStream();
//
// String result = readMyInputStream(is);
System.out.println("测试:"+result);
/**
* 子线程发送消息到主线程,并将获取的结果带到主线程,让主线程来更新UI。
*/
Message msg = new Message();
msg.obj = result;
msg.what = SUCCESS_3;
handlerHttp.sendMessage(msg);
} else {
hideProgressDialog();
Message msg = new Message();
msg.what = ERRORCODE;
msg.obj=code;
handlerHttp.sendMessage(msg);
}
} catch (SocketTimeoutException e) {
hideProgressDialog();
e.printStackTrace();
/**
* 如果获取失败,或出现异常,那么子线程发送失败的消息(FAILURE)到主线程,主线程显示Toast,来告诉使用者,数据获取是失败。
*/
Message msg = new Message();
msg.what = SocketTimeout;
handlerHttp.sendMessage(msg);
}catch (Exception e) {
hideProgressDialog();
e.printStackTrace();
/**
* 如果获取失败,或出现异常,那么子线程发送失败的消息(FAILURE)到主线程,主线程显示Toast,来告诉使用者,数据获取是失败。
*/
Message msg = new Message();
msg.what = FAILURE;
handlerHttp.sendMessage(msg);
}
}
}.start();
}
05-27
540
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
08-09
6104
![](https://csdnimg.cn/release/blogv2/dist/pc/img/readCountWhite.png)
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交