相簿上傳視訊
阿新 • • 發佈:2018-12-10
開啟相簿獲取相簿視訊
intent = new Intent(); intent.setType("video/*"); intent.setAction(Intent.ACTION_GET_CONTENT); intent.addCategory(Intent.CATEGORY_OPENABLE); startActivityForResult(intent, 998);
onActivityResult回撥
Uri uri = data.getData();
String filePath = UriUtils.getPath(getActivity(),uri);
下面是前篇一律的上傳程式碼 貼我自己專案的,可根據自己的網路請求修改
OkHttpClient mOkHttpClent = new OkHttpClient(); MultipartBody.Builder builder = new MultipartBody.Builder() .setType(MultipartBody.FORM) // .addFormDataPart("second", videoPath+""); File file = new File(filePath + ""); // builder.addFormDataPart("video" + i, fileList.get(i) + "", createCustomRequestBody()RequestBody.create(MediaType.parse("image/png"), file)); builder.addFormDataPart("video", file.getName(), createCustomRequestBody(MultipartBody.FORM, file, new ProgressListener() { @Override public void onProgress(long totalBytes, long remainingBytes, boolean done) { System.out.print((totalBytes - remainingBytes) * 100 / totalBytes + "%"); } })); RequestBody requestBody = builder.build(); okhttp3.Request request = new okhttp3.Request.Builder() .url(Urls.URL_ROOM) .post(requestBody) .build(); Call call = mOkHttpClent.newCall(request); call.enqueue(new Callback() { @Override public void onFailure(Call call, IOException e) { KLog.e("TAG", "onFailure: " + e); } @Override public void onResponse(Call call, okhttp3.Response response) throws IOException { String result = response.body().string(); KLog.e("TAG", result); KLog.e("TAG", "成功" + response); } });