Browse Source

修改部分midi文件名需要转义的问题

Pq 3 years ago
parent
commit
0f78a2d967

+ 11 - 2
student/src/main/java/com/cooleshow/student/ui/web/AccompanyFragment.java

@@ -47,6 +47,7 @@ import com.cooleshow.base.recorder.Recorder;
 import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.fragment.BaseMVPFragment;
 import com.cooleshow.base.utils.AppUtils;
+import com.cooleshow.base.utils.EncodeUtils;
 import com.cooleshow.base.utils.HeadsetPlugListener;
 import com.cooleshow.base.utils.HeadsetPlugReceiver;
 import com.cooleshow.base.utils.LogUtils;
@@ -1558,7 +1559,11 @@ public class AccompanyFragment extends BaseMVPFragment<FragmentAccompanyBinding,
                                     if (Math.abs(midiFileDuration - tempDuration * 1000) > 2000) {
                                         midiFileDuration = (long) (tempDuration * 1000);
                                     }
-                                    message.optJSONObject("content").put("midiDuration", midiFileDuration);
+                                    JSONObject contentJsonObject =message.optJSONObject("content");
+                                    if (contentJsonObject != null) {
+                                        contentJsonObject.put("midiDuration", midiFileDuration);
+                                        contentJsonObject.put("midi", EncodeUtils.urlEncode(midiFile));
+                                    }
                                     onSendMessage(message.toString());
                                 } else {
                                     RetrofitClientNoToken.getInstance().getRetrofit().create(APIService.class)
@@ -1582,7 +1587,11 @@ public class AccompanyFragment extends BaseMVPFragment<FragmentAccompanyBinding,
                                                                 midiFileDuration = (long) (tempDuration * 1000);
                                                             }
                                                             try {
-                                                                message.optJSONObject("content").put("midiDuration", midiFileDuration);
+                                                                JSONObject contentJsonObject =message.optJSONObject("content");
+                                                                if (contentJsonObject != null) {
+                                                                    contentJsonObject.put("midiDuration", midiFileDuration);
+                                                                    contentJsonObject.put("midi", EncodeUtils.urlEncode(midiFile));
+                                                                }
                                                             } catch (JSONException e) {
                                                                 e.printStackTrace();
                                                             } finally {

+ 12 - 2
teacher/src/main/java/com/cooleshow/teacher/ui/web/AccompanyFragment.java

@@ -47,6 +47,7 @@ import com.cooleshow.base.recorder.Recorder;
 import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.fragment.BaseMVPFragment;
 import com.cooleshow.base.utils.AppUtils;
+import com.cooleshow.base.utils.EncodeUtils;
 import com.cooleshow.base.utils.HeadsetPlugListener;
 import com.cooleshow.base.utils.HeadsetPlugReceiver;
 import com.cooleshow.base.utils.LogUtils;
@@ -99,6 +100,7 @@ import org.json.JSONObject;
 import java.io.File;
 import java.lang.ref.WeakReference;
 import java.net.URI;
+import java.net.URLEncoder;
 import java.security.MessageDigest;
 import java.security.NoSuchAlgorithmException;
 import java.util.HashMap;
@@ -1559,7 +1561,11 @@ public class AccompanyFragment extends BaseMVPFragment<FragmentAccompanyBinding,
                                     if (Math.abs(midiFileDuration - tempDuration * 1000) > 2000) {
                                         midiFileDuration = (long) (tempDuration * 1000);
                                     }
-                                    message.optJSONObject("content").put("midiDuration", midiFileDuration);
+                                    JSONObject contentJsonObject =message.optJSONObject("content");
+                                    if (contentJsonObject != null) {
+                                        contentJsonObject.put("midiDuration", midiFileDuration);
+                                        contentJsonObject.put("midi", EncodeUtils.urlEncode(midiFile));
+                                    }
                                     onSendMessage(message.toString());
                                 } else {
                                     RetrofitClientNoToken.getInstance().getRetrofit().create(APIService.class)
@@ -1583,7 +1589,11 @@ public class AccompanyFragment extends BaseMVPFragment<FragmentAccompanyBinding,
                                                                 midiFileDuration = (long) (tempDuration * 1000);
                                                             }
                                                             try {
-                                                                message.optJSONObject("content").put("midiDuration", midiFileDuration);
+                                                                JSONObject contentJsonObject =message.optJSONObject("content");
+                                                                if (contentJsonObject != null) {
+                                                                    contentJsonObject.put("midiDuration", midiFileDuration);
+                                                                    contentJsonObject.put("midi", EncodeUtils.urlEncode(midiFile));
+                                                                }
                                                             } catch (JSONException e) {
                                                                 e.printStackTrace();
                                                             } finally {