Browse Source

增加老师端H5页面上传匹配文件类型判断(暂时注释)

Pq 3 years ago
parent
commit
ddf75d7347

+ 22 - 0
BaseLibrary/src/main/java/com/cooleshow/base/utils/FileUtils.java

@@ -1748,4 +1748,26 @@ public final class FileUtils {
         }
         return compressPath;
     }
+
+    public static boolean isMatchTargetFileType(String targetType,String filePath){
+        try {
+            if(TextUtils.isEmpty(targetType)){
+                return true;
+            }
+            File file = new File(filePath);
+            if (!file.exists()) {
+                return false;
+            }
+            int lastDot = file.getName().lastIndexOf(".");
+            if (lastDot < 0) {
+                return false;
+            }
+            String type = file.getName().substring(lastDot + 1).toLowerCase();
+            Log.i("FileUtils","targetType:"+targetType+"-type:"+type);
+            return TextUtils.equals(targetType, type);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return true;
+    }
 }

+ 17 - 0
teacher/src/main/java/com/cooleshow/teacher/ui/web/HtmlActivity.java

@@ -52,6 +52,7 @@ import com.cooleshow.base.data.net.RetrofitClientNoToken;
 import com.cooleshow.base.router.RouterPath;
 import com.cooleshow.base.ui.activity.BaseActivity;
 import com.cooleshow.base.utils.AppUtils;
+import com.cooleshow.base.utils.FileUtils;
 import com.cooleshow.base.utils.LogUtils;
 import com.cooleshow.base.utils.PermissionUtils;
 import com.cooleshow.base.utils.ToastUtil;
@@ -1179,9 +1180,14 @@ public class HtmlActivity extends BaseActivity<ActivityHtml1Binding> implements
                     }
                 }
             }
+            Log.i("pq", "baseJsonObject:" + baseJsonObject.toString());
             if (result != null) {
                 File file = UriUtils.uri2File(result);
                 if (file != null && file.exists()) {
+//                    if (!isMatchFile(file.getAbsolutePath())) {
+//                        ToastUtil.getInstance().showShort("请上传正确类型的文件");
+//                        return;
+//                    }
                     UploadHelper uploadHelper = new UploadHelper(HtmlActivity.this, buckName);
                     uploadHelper.uploadFile(file);
                     uploadHelper.setUpLoadCallBack(new UploadHelper.UpLoadCallBack() {
@@ -1231,6 +1237,17 @@ public class HtmlActivity extends BaseActivity<ActivityHtml1Binding> implements
 
     }
 
+    private boolean isMatchFile(String filePath) {
+        try {
+            JSONObject contentJsonObject = baseJsonObject.getJSONObject("content");
+            String type = contentJsonObject.optString("type");
+            return FileUtils.isMatchTargetFileType(type, filePath);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return true;
+    }
+
     private void upLoadFileFaile() {
         try {
             JSONObject contentObj = baseJsonObject.getJSONObject("content");