Browse Source

修改PDF文件加载

songw 11 months ago
parent
commit
119f8cd094

+ 1 - 1
app/build.gradle

@@ -51,7 +51,7 @@ android {
             if (outputFile != null && outputFile.name.endsWith('.apk')) {
                 if (variant.buildType.name.equals('release')) {
                     def releaseInfo = getVersionName()
-                    fileName = "ESOP_release_${releaseInfo}.apk"
+                    fileName = "柯赛ESOP_release_${releaseInfo}.apk"
                 } else if (variant.buildType.name.equals('debug')) {
                     def debugInfo = getVersionName()
                     fileName = "UAS_esop_STORAGE_DEBUG_${debugInfo}.apk"

+ 21 - 0
app/src/main/assets/web/index.html

@@ -0,0 +1,21 @@
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport"
+          content="width=device-width,initial-scale=1.0,minimum-scale=1.0,maximum-scale=4.0,user-scalable=no"/>
+    <title>Document</title>
+    <style type="text/css">
+        canvas {
+            width: 100%;
+            height: 100%;
+            border: 1px solid black;
+        }
+    </style>
+    <script src="https://unpkg.com/pdfjs-dist@1.9.426/build/pdf.min.js"></script>
+    <script type="text/javascript" src="index.js"></script>
+</head>
+<body>
+</body>
+</html>
+
+

+ 36 - 0
app/src/main/assets/web/index.js

@@ -0,0 +1,36 @@
+var url = location.search.substring(1);
+
+PDFJS.cMapUrl = 'https://unpkg.com/pdfjs-dist@1.9.426/cmaps/';
+PDFJS.cMapPacked = true;
+
+var pdfDoc = null;
+
+function createPage() {
+    var div = document.createElement("canvas");
+    document.body.appendChild(div);
+    return div;
+}
+
+function renderPage(num) {
+    pdfDoc.getPage(num).then(function (page) {
+        var viewport = page.getViewport(2.0);
+        var canvas = createPage();
+        var ctx = canvas.getContext('2d');
+
+        canvas.height = viewport.height;
+        canvas.width = viewport.width;
+
+        page.render({
+            canvasContext: ctx,
+            viewport: viewport
+        });
+    });
+}
+
+PDFJS.getDocument(url).then(function (pdf) {
+    pdfDoc = pdf;
+    for (var i = 1; i <= pdfDoc.numPages; i++) {
+        renderPage(i)
+    }
+});
+

+ 9 - 5
app/src/main/java/com/uas/kesai_esop/activity/IndexActivity.java

@@ -43,7 +43,6 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.android.volley.Request;
 import com.android.volley.toolbox.StringRequest;
-import com.bumptech.glide.Glide;
 import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.chad.library.adapter.base.BaseViewHolder;
 import com.google.gson.Gson;
@@ -619,7 +618,7 @@ public class IndexActivity extends BaseActivity implements AdapterView.OnItemCli
         urlBeanList.clear();
         for (Object index : dataArray) {
             JSONObject data = (JSONObject) index;
-            if (data.getString("filename").equals(at_gvtext.getText().toString().trim() + ".jpg")) {
+            if (!TextUtils.isEmpty(data.getString("filename"))) {
                 bean = new ResourcefileBean.DataBean.UrlBean(
                         data.getString("path"),
                         data.getString("filename"), data.getString("keystep"));
@@ -1578,6 +1577,7 @@ public class IndexActivity extends BaseActivity implements AdapterView.OnItemCli
         //        if (StringUtil.isEmpty(ss_code)){
         //            ss_code="";
         //        }
+        Log.e("aaa", "获取资源信息-ps_code:" + ps_code + ",岗位单号:" + at_gvtext.getText().toString().trim());
         urlBeanList.clear();
         progressDialog.show();
         VollyRequest.getInstance().stringRequest(mStringRequest,
@@ -1593,6 +1593,7 @@ public class IndexActivity extends BaseActivity implements AdapterView.OnItemCli
                     public void onSuccess(int flag, Object o) throws Exception {
                         urlBeanList.clear();
                         progressDialog.dismiss();
+                        Log.e("aaa", "获取资源信息:" + o.toString());
                         Boolean isSuccess = FastjsonUtil.getBoolean(o.toString(), "success");
                         if (isSuccess) {
                             Gson gson = new Gson();
@@ -1610,11 +1611,10 @@ public class IndexActivity extends BaseActivity implements AdapterView.OnItemCli
                     public void onFail(int flag, String failStr) throws Exception {
                         progressDialog.dismiss();
                         CommonUtil.toastNoRepeat(IndexActivity.this, failStr);
+                        Log.e("aaa", "获取资源信息错误:" + failStr);
                     }
 
                 });
-
-
     }
 
 
@@ -1733,6 +1733,7 @@ public class IndexActivity extends BaseActivity implements AdapterView.OnItemCli
      */
 
     private void getSC_CODEData() {
+        Log.e("aaa", "触发调用接口: " + mPositionR.getText().toString().trim());
         VollyRequest.getInstance().stringRequest(mStringRequest,
                 new HttpParams.Builder()
                         .url(GloableParams.ASTATIONTHE_INDEXES_SOP)
@@ -1745,6 +1746,7 @@ public class IndexActivity extends BaseActivity implements AdapterView.OnItemCli
                     public void onSuccess(int flag, Object o) throws Exception {
                         progressDialog.dismiss();
                         mList.clear();
+                        Log.e("aaa", "正确的值: " + o.toString());
                         Boolean isSuccess = FastjsonUtil.getBoolean(o.toString(), "success");
                         if (isSuccess) {
                             JSONArray dataArray = FastjsonUtil.getJSONArray(o.toString(), "data");
@@ -1787,6 +1789,7 @@ public class IndexActivity extends BaseActivity implements AdapterView.OnItemCli
                         rv_data.setVisibility(View.GONE);
                         progressDialog.dismiss();
                         CommonUtil.toastNoRepeat(IndexActivity.this, failStr);
+                        Log.e("aaa", "错误: " + failStr);
                         rv_datawork.setVisibility(View.GONE);
                     }
 
@@ -2367,7 +2370,8 @@ public class IndexActivity extends BaseActivity implements AdapterView.OnItemCli
             //            ((ListItemViewHolder) holder).tv_mi_desc.setText("标准:"+mList.get(i).getPath());
             ((ListItemViewHolder) holder).checkBox.setChecked(isItemChecked(i));
             String str2 = new String(Base64.decode(mList.get(i).getPath().getBytes(), Base64.DEFAULT));
-            Glide.with(IndexActivity.this).load(str2).into(((ListItemViewHolder) holder).iv_personnel_data);
+            //加载不出来pdf的
+//            Glide.with(IndexActivity.this).load(str2).into(((ListItemViewHolder) holder).iv_personnel_data);
 
             if (mList.get(i).getFilename().contains(".pdf") || mList.get(i).getFilename().contains(".PDF")) {
                 //checkBox的监听

+ 3 - 3
app/src/main/java/com/uas/kesai_esop/activity/PdfsActivity.java

@@ -17,8 +17,6 @@ import android.webkit.WebView;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
 
-import androidx.appcompat.app.AppCompatActivity;
-
 import com.uas.kesai_esop.R;
 import com.uas.kesai_esop.util.CommonUtil;
 import com.uas.kesai_esop.util.DateFormatUtil;
@@ -33,6 +31,8 @@ import java.net.URL;
 import java.net.URLConnection;
 import java.util.ArrayList;
 
+import androidx.appcompat.app.AppCompatActivity;
+
 import static com.uas.kesai_esop.util.OSUtil.isMIUI;
 import static razerdp.util.RomUtil.isFlyme;
 
@@ -63,7 +63,6 @@ public class PdfsActivity extends AppCompatActivity {
             Log.e("smd5", filepath);
         }
 
-
         WebView webView = findViewById(R.id.webView);
         ImageView iv_fullscreen = findViewById(R.id.iv_fullscreen);
         ImageView iv_download = findViewById(R.id.iv_download);
@@ -80,6 +79,7 @@ public class PdfsActivity extends AppCompatActivity {
         webSettings.setAllowFileAccessFromFileURLs(true);
         webSettings.setAllowUniversalAccessFromFileURLs(true);
         webView.loadUrl("file:///android_asset/web/viewer.html?file="+filepath);
+//        webView.loadUrl("file:///android_asset/web/index.html?file="+filepath);
         webView.getSettings().setBuiltInZoomControls(true);
         webView.getSettings().setSupportZoom(true);
         webView.getSettings().setDisplayZoomControls(false);//不显示缩放按钮

BIN
app/src/main/res/drawable-xhdpi/moren.png


+ 2 - 10
app/src/main/res/layout-large/activity_index.xml

@@ -543,13 +543,10 @@
                     </androidx.recyclerview.widget.RecyclerView >
                 </RelativeLayout>
 
-
-
-
-
-
             </RelativeLayout>
+
             <LinearLayout
+                android:visibility="gone"
                 android:orientation="vertical"
                 android:layout_weight="2"
                 android:layout_width="match_parent"
@@ -755,11 +752,6 @@
 
         </LinearLayout>
 
-
-
-
-
-
     </ScrollView>
 
 

+ 3 - 10
app/src/main/res/layout/activity_index.xml

@@ -33,6 +33,7 @@
             app:srlAccentColor="@android:color/darker_gray" />
     </com.scwang.smartrefresh.layout.SmartRefreshLayout>
 
+
     <LinearLayout
         android:visibility="gone"
         android:layout_width="match_parent"
@@ -542,13 +543,10 @@
                     </androidx.recyclerview.widget.RecyclerView >
                 </RelativeLayout>
 
-
-
-
-
-
             </RelativeLayout>
+
             <LinearLayout
+                android:visibility="gone"
                 android:orientation="vertical"
                 android:layout_weight="2"
                 android:layout_width="match_parent"
@@ -754,11 +752,6 @@
 
         </LinearLayout>
 
-
-
-
-
-
     </ScrollView>
 
 

+ 3 - 1
app/src/main/res/layout/recyclerview_item.xml

@@ -27,8 +27,10 @@
                 android:layout_height="150dp"
                 android:scaleType="centerCrop"
                 android:layout_gravity="center"
-                android:background="@drawable/bg_line_edittext">
+                android:background="@drawable/moren">
             </ImageView>
+            <!-- android:background="@drawable/bg_line_edittext" -->
+
             <TextView
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"

+ 2 - 2
build.gradle

@@ -59,8 +59,8 @@ ext {
             targetSdkVersion : 28,
             compileSdkVersion: 28,
             buildToolsVersion: "28.0.3",
-            versionCode      : 1,
-            versionName      : "v1.0.0"
+            versionCode      : 2,
+            versionName      : "v1.0.1"
     ]
 
     depsVersion = [