0
を使用してビデオをアップロードするとき、私はそれは、しかし、それを接続が設定されている第一回のためにビデオをアップロードした改造サーバETIMEDOUT(接続がタイムアウト)改造2
private String uploadVideoToServer(String pathToVideoFile) {
Log.v("test_get", "get the file");
Retrofit retrofit = new Retrofit.Builder()
.baseUrl("http://xxx.xxx.xxx.xxx:xxxx/")
.addConverterFactory(GsonConverterFactory.create())
.build();
SmileVideoAPI service = retrofit.create(SmileVideoAPI.class);
MediaType MEDIA_TYPE = MediaType.parse("multipart/form-data");
File videoFile = new File(pathToVideoFile);
//RequestBody videoBody = RequestBody.create(MEDIA_TYPE, videoFile);
ProgressRequestBody videoBody = new ProgressRequestBody(videoFile, this);
MultipartBody.Part vFile = MultipartBody.Part.createFormData("file", videoFile.getName(), videoBody);
RequestBody description = createPartFromString("desc");
Log.v("test_get", "before uploading");
Call<ResponseBody> call = service.uploadVideo(description, vFile);
Log.v("test_get", "after uploading");
call.enqueue(new Callback<ResponseBody>() {
@Override
public void onResponse(Call<ResponseBody> call, Response<ResponseBody> response) {
if (response.isSuccessful()) {
Log.i("mok", "S");
ResponseBody rb = response.body();
Log.i("mok", rb.toString());
mProgress.setProgress(100);
Intent intent = new Intent(UploadActivity.this, UploadCompleteActivity.class);
startActivity(intent);
finish();
} else {
Log.i("mok", "F");
ResponseBody rb = response.errorBody();
Log.i("mok", rb.toString());
}
}
@Override
public void onFailure(Call<ResponseBody> call, Throwable t) {
t.printStackTrace();
Log.i("mok", t.getCause() + "");
Log.i("mok", "T");
Toast.makeText(getApplicationContext(), "Upload fail", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(UploadActivity.this, MainActivity.class);
startActivity(intent);
finish();
}
});
return msg;
}
に自分の動画をアップロードするには、このコードを使用しています以下のエラーを時折以下に投げます。
libcore.io.ErrnoException:をisConnectedに失敗しました:この出来事があり、そしてどのように私はそれを修正することができる理由ETIMEDOUT(接続がタイムアウト)
は、誰も私を説明できますか?今、私は接続が閉じられていない可能性があるため、接続を閉じる方法を調べています。接続が解除されていないので、これが原因となっている