Browse Source

视频上传修改完成

huyuguo 5 years ago
parent
commit
dd1e1a6ace

+ 1 - 2
app/src/main/java/com/electric/chargingpile/activity/PublishPicTopicActivity.java

919
    private void requestPublishServer(String urls) {
919
    private void requestPublishServer(String urls) {
920
        String url = MainApplication.urlNew + "/topic/publish.do";
920
        String url = MainApplication.urlNew + "/topic/publish.do";
921
        Map<String, String> map = new HashMap<>();
921
        Map<String, String> map = new HashMap<>();
922
        map.put("content", et_context.getText().toString());
922
        map.put("content", et_context.getText().toString().trim());
923
        map.put("urls", Base64.encode(urls.getBytes()).replaceAll("\\s*", ""));
923
        map.put("urls", Base64.encode(urls.getBytes()).replaceAll("\\s*", ""));
924
        Log.d(TAG, "requestPublishServer: " + Base64.encode(urls.getBytes()).replaceAll("\\s*", ""));
925
        if (chatRecommendBean != null) {
924
        if (chatRecommendBean != null) {
926
            map.put("topicId", chatRecommendBean.topicId + "");
925
            map.put("topicId", chatRecommendBean.topicId + "");
927
        }
926
        }

+ 30 - 14
app/src/main/java/com/electric/chargingpile/activity/PublishVideoTopicActivity.java

34
import com.electric.chargingpile.data.ChatRecommendBean;
34
import com.electric.chargingpile.data.ChatRecommendBean;
35
import com.electric.chargingpile.data.PublishItemSerializable;
35
import com.electric.chargingpile.data.PublishItemSerializable;
36
import com.electric.chargingpile.data.TalkRecommendBean;
36
import com.electric.chargingpile.data.TalkRecommendBean;
37
import com.electric.chargingpile.data.VideoUploadResult;
37
import com.electric.chargingpile.manager.ProfileManager;
38
import com.electric.chargingpile.manager.ProfileManager;
38
import com.electric.chargingpile.util.BarColorUtil;
39
import com.electric.chargingpile.util.BarColorUtil;
40
import com.electric.chargingpile.util.Base64;
39
import com.electric.chargingpile.util.Bimp;
41
import com.electric.chargingpile.util.Bimp;
40
import com.electric.chargingpile.util.CommonParams;
42
import com.electric.chargingpile.util.CommonParams;
43
import com.electric.chargingpile.util.DateUtils;
41
import com.electric.chargingpile.util.JsonUtils;
44
import com.electric.chargingpile.util.JsonUtils;
42
import com.electric.chargingpile.util.LoadingDialog;
45
import com.electric.chargingpile.util.LoadingDialog;
43
import com.electric.chargingpile.util.ToastUtil;
46
import com.electric.chargingpile.util.ToastUtil;
47
import com.electric.chargingpile.util.Util;
44
import com.luck.picture.lib.PictureSelector;
48
import com.luck.picture.lib.PictureSelector;
45
import com.luck.picture.lib.compress.Luban;
49
import com.luck.picture.lib.compress.Luban;
46
import com.luck.picture.lib.config.PictureConfig;
50
import com.luck.picture.lib.config.PictureConfig;
59
import java.util.List;
63
import java.util.List;
60
import java.util.Map;
64
import java.util.Map;
61
65
66
import cn.jpush.android.api.JPushInterface;
62
import okhttp3.Call;
67
import okhttp3.Call;
63
68
64
public class PublishVideoTopicActivity extends Activity implements OnClickListener {
69
public class PublishVideoTopicActivity extends Activity implements OnClickListener {
230
    }
235
    }
231
236
232
    private void getYouPaiData() {
237
    private void getYouPaiData() {
233
        String fileNames = media.getPath().substring(media.getPath().lastIndexOf("/") + 1);
234
        String url = MainApplication.urlNew + "/topic/sign.do";
238
        String url = MainApplication.urlNew + "/topic/sign.do";
239
        if (TextUtils.isEmpty(media.fName)) {
240
            ToastUtil.showToast(getApplicationContext(), "请重新选择视频", Toast.LENGTH_SHORT);
241
            return;
242
        }
235
        Map<String, String> map = new HashMap<>();
243
        Map<String, String> map = new HashMap<>();
236
        map.put("fileNames", fileNames);
237
        Log.e("fileNameDir fileName", fileNames);
244
        map.put("fileNames", media.fName);
238
        map.put("targetType", ChatRecommendBean.TARGET_TYPE_VIDEO + "");
245
        map.put("targetType", ChatRecommendBean.TARGET_TYPE_VIDEO + "");
239
        CommonParams.addCommonParams(map);
246
        CommonParams.addCommonParams(map);
240
247
287
            @Override
294
            @Override
288
            public void onComplete(boolean isSuccess, String result) {
295
            public void onComplete(boolean isSuccess, String result) {
289
                if (isSuccess) {
296
                if (isSuccess) {
290
                    requestPublishServer("[" + result + "]");
297
                    VideoUploadResult videoUploadResult = new VideoUploadResult(result);
298
                    requestPublishServer("[" + videoUploadResult.formatResult() + "]");
291
                } else {
299
                } else {
292
                    ToastUtil.showToast(getApplicationContext(), "发布失败,请重试", Toast.LENGTH_SHORT);
300
                    ToastUtil.showToast(getApplicationContext(), "发布失败,请重试", Toast.LENGTH_SHORT);
293
                    uploadDialog.dismiss();
301
                    uploadDialog.dismiss();
302
    }
310
    }
303
311
304
    private void requestPublishServer(String urls) {
312
    private void requestPublishServer(String urls) {
305
        File file = new File(media.getPath());
306
        long size = 0L;
307
        if (file.exists()) {
308
            size = file.length();
309
        }
310
313
311
        String url = MainApplication.urlNew + "/topic/publish.do";
314
        String url = MainApplication.urlNew + "/topic/publish.do";
312
        Map<String, String> map = new HashMap<>();
315
        Map<String, String> map = new HashMap<>();
313
        map.put("content", mPublishtopicCon.getText().toString().trim());
316
        map.put("content", mPublishtopicCon.getText().toString().trim());
314
        map.put("urls", urls);
317
        map.put("urls", Base64.encode(urls.getBytes()).replaceAll("\\s*", ""));
315
        if (chatRecommendBean != null) {
318
        if (chatRecommendBean != null) {
316
            map.put("topicId", chatRecommendBean.topicId + "");
319
            map.put("topicId", chatRecommendBean.topicId + "");
317
        }
320
        }
318
        map.put("targetType", ChatRecommendBean.TARGET_TYPE_VIDEO + "");
321
        map.put("targetType", ChatRecommendBean.TARGET_TYPE_VIDEO + "");
319
        map.put("coverImgW", media.getWidth() + "");
320
        map.put("coverImgH", media.getHeight() + "");
321
        map.put("duration", media.getDuration() + "");
322
        map.put("size", size + "");
323
        CommonParams.addCommonParams(map);
322
        CommonParams.addCommonParams(map);
324
323
325
        OkHttpUtils.post().params(map).url(url).build().connTimeOut(6000).readTimeOut(6000).execute(new StringCallback() {
324
        OkHttpUtils.post().params(map).url(url).build().connTimeOut(6000).readTimeOut(6000).execute(new StringCallback() {
365
            List<LocalMedia> selectList = PictureSelector.obtainMultipleResult(data);
364
            List<LocalMedia> selectList = PictureSelector.obtainMultipleResult(data);
366
            if (selectList != null && selectList.size() > 0) {
365
            if (selectList != null && selectList.size() > 0) {
367
                media = selectList.get(0);
366
                media = selectList.get(0);
367
368
                String deviceId = JPushInterface.getUdid(MainApplication.context);
369
                media.fName = DateUtils.getSimpleCurrentDate();
370
                if (TextUtils.isEmpty(deviceId)) {
371
                    media.fName += "_" + Util.getRandom(15);
372
                } else {
373
                    media.fName += "_" + deviceId;
374
                }
375
                String path = media.getPath();
376
                if (TextUtils.isEmpty(path)) {
377
                    media.fName = "";
378
                } else {
379
                    String suffix = path.substring(path.lastIndexOf(".") + 1);
380
                    media.fName += "." + suffix;
381
                }
382
368
                if (TextUtils.isEmpty(media.getPath())) {
383
                if (TextUtils.isEmpty(media.getPath())) {
369
                    return;
384
                    return;
370
                }
385
                }
386
371
                if (!fileIsExists(media.getPath())) {
387
                if (!fileIsExists(media.getPath())) {
372
                    Log.e("yopic", "文件可能不存在了~");
388
                    Log.e("yopic", "文件可能不存在了~");
373
                    return;
389
                    return;

+ 32 - 0
app/src/main/java/com/electric/chargingpile/data/VideoUploadResult.java

1
package com.electric.chargingpile.data;
2
3
import com.electric.chargingpile.util.JsonUtils;
4
import com.google.gson.Gson;
5
6
import java.util.HashMap;
7
import java.util.Map;
8
9
public class VideoUploadResult {
10
    private String result;
11
12
    public VideoUploadResult(String result) {
13
        this.result = result;
14
    }
15
16
    public String formatResult() {
17
        Gson gson = new Gson();
18
        Map<String, Object> map = new HashMap<>();
19
        map = gson.fromJson(result, map.getClass());
20
21
        Map<String, Object> resultMap = new HashMap<>();
22
        resultMap.put("type", map.get("mimetype"));
23
        resultMap.put("size", map.get("file_size"));
24
        resultMap.put("url", map.get("url"));
25
26
        resultMap.put("w", "0");
27
        resultMap.put("h", "0");
28
        resultMap.put("duration", "0");
29
30
        return JsonUtils.mapToJson(resultMap);
31
    }
32
}

+ 1 - 0
videolibrary/picture_library/src/main/java/com/luck/picture/lib/entity/LocalMedia.java

25
    private boolean compressed;
25
    private boolean compressed;
26
    private int width;
26
    private int width;
27
    private int height;
27
    private int height;
28
    public String fName;
28
29
29
    public LocalMedia() {
30
    public LocalMedia() {
30
31