Browse Source

ComPDFKit(flutter) - 修改检查密码接口

liuxiaolong 3 months ago
parent
commit
e21e540d49

+ 1 - 1
android/src/main/java/com/compdfkit/flutter/compdfkit_flutter/constants/CPDFConstants.java

@@ -102,7 +102,7 @@ public class CPDFConstants {
 
     public static final String CHECK_OWNER_UNLOCKED = "check_owner_unlocked";
 
-    public static final String CHECK_PASSWORD = "check_password";
+    public static final String CHECK_OWNER_PASSWORD = "check_owner_password";
 
     public static final String CLOSE = "close";
 

+ 3 - 5
android/src/main/java/com/compdfkit/flutter/compdfkit_flutter/plugin/CPDFDocumentPlugin.java

@@ -12,7 +12,7 @@ package com.compdfkit.flutter.compdfkit_flutter.plugin;
 
 
 import static com.compdfkit.flutter.compdfkit_flutter.constants.CPDFConstants.ChannelMethod.CHECK_OWNER_UNLOCKED;
-import static com.compdfkit.flutter.compdfkit_flutter.constants.CPDFConstants.ChannelMethod.CHECK_PASSWORD;
+import static com.compdfkit.flutter.compdfkit_flutter.constants.CPDFConstants.ChannelMethod.CHECK_OWNER_PASSWORD;
 import static com.compdfkit.flutter.compdfkit_flutter.constants.CPDFConstants.ChannelMethod.CLOSE;
 import static com.compdfkit.flutter.compdfkit_flutter.constants.CPDFConstants.ChannelMethod.GET_PAGE_COUNT;
 import static com.compdfkit.flutter.compdfkit_flutter.constants.CPDFConstants.ChannelMethod.REMOVE_ALL_ANNOTATIONS;
@@ -31,7 +31,6 @@ import android.text.TextUtils;
 import androidx.annotation.NonNull;
 import com.compdfkit.core.document.CPDFDocument;
 import com.compdfkit.core.document.CPDFDocument.PDFDocumentError;
-import com.compdfkit.core.page.CPDFPage;
 import com.compdfkit.tools.common.utils.CFileUtils;
 import com.compdfkit.tools.common.utils.threadpools.CThreadPoolUtils;
 import com.compdfkit.ui.reader.CPDFReaderView;
@@ -103,10 +102,9 @@ public class CPDFDocumentPlugin extends BaseMethodChannelPlugin {
       case CHECK_OWNER_UNLOCKED:
         result.success(document.checkOwnerUnlocked());
         break;
-      case CHECK_PASSWORD:
+      case CHECK_OWNER_PASSWORD:
         String password = call.argument("password");
-        boolean isOwnerPwd = call.argument("isOwnerPassword");
-        result.success(document.checkPassword(password, isOwnerPwd));
+        result.success(document.checkOwnerPassword(password));
       case CLOSE:
         document.close();
         result.success(true);

+ 1 - 6
android/src/main/java/com/compdfkit/flutter/compdfkit_flutter/plugin/ComPDFKitSDKPlugin.java

@@ -24,21 +24,16 @@ import android.util.Log;
 import androidx.annotation.NonNull;
 
 import com.compdfkit.core.document.CPDFSdk;
-import com.compdfkit.core.utils.TFileUtils;
-import com.compdfkit.flutter.compdfkit_flutter.utils.FileUtils;
 import com.compdfkit.tools.common.pdf.CPDFConfigurationUtils;
 import com.compdfkit.tools.common.pdf.CPDFDocumentActivity;
 import com.compdfkit.tools.common.pdf.config.CPDFConfiguration;
 import com.compdfkit.tools.common.utils.CFileUtils;
-import com.compdfkit.tools.common.utils.CLog;
 
 import java.io.File;
-import java.util.Map;
 
 import io.flutter.plugin.common.BinaryMessenger;
 import io.flutter.plugin.common.MethodCall;
 import io.flutter.plugin.common.MethodChannel;
-import io.flutter.plugin.platform.PlatformViewRegistry;
 
 
 public class ComPDFKitSDKPlugin extends BaseMethodChannelPlugin {
@@ -90,7 +85,7 @@ public class ComPDFKitSDKPlugin extends BaseMethodChannelPlugin {
                 break;
             case REMOVE_SIGN_FILE_LIST:
                 File dirFile = new File(context.getFilesDir(), CFileUtils.SIGNATURE_FOLDER);
-                boolean deleteResult = FileUtils.deleteDirectory(dirFile.getAbsolutePath());
+                boolean deleteResult = CFileUtils.deleteDirectory(dirFile.getAbsolutePath());
                 result.success(deleteResult);
                 break;
             default:

+ 0 - 89
android/src/main/java/com/compdfkit/flutter/compdfkit_flutter/utils/FileUtils.java

@@ -1,89 +0,0 @@
-/*
- * Copyright © 2014-2024 PDF Technologies, Inc. All Rights Reserved.
- *
- * THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW
- * AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE ComPDFKit LICENSE AGREEMENT.
- * UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND CRIMINAL PENALTIES.
- * This notice may not be removed from this file.
- *
- */
-
-package com.compdfkit.flutter.compdfkit_flutter.utils;
-
-import android.widget.Toast;
-import java.io.File;
-
-
-public class FileUtils {
-  /** 删除文件,可以是文件或文件夹
-   * @param delFile 要删除的文件夹或文件名
-   * @return 删除成功返回true,否则返回false
-   */
-  public static boolean delete(String delFile) {
-    File file = new File(delFile);
-    if (!file.exists()) {
-      return false;
-    } else {
-      if (file.isFile())
-        return deleteSingleFile(delFile);
-      else
-        return deleteDirectory(delFile);
-    }
-  }
-
-  /** 删除单个文件
-   * @param filePath$Name 要删除的文件的文件名
-   * @return 单个文件删除成功返回true,否则返回false
-   */
-  public static  boolean deleteSingleFile(String filePath$Name) {
-    File file = new File(filePath$Name);
-    // 如果文件路径所对应的文件存在,并且是一个文件,则直接删除
-    if (file.exists() && file.isFile()) {
-      if (file.delete()) {
-        return true;
-      } else {
-        return false;
-      }
-    } else {
-      return false;
-    }
-  }
-
-  /** 删除目录及目录下的文件
-   * @param filePath 要删除的目录的文件路径
-   * @return 目录删除成功返回true,否则返回false
-   */
-  public static  boolean deleteDirectory(String filePath) {
-    // 如果dir不以文件分隔符结尾,自动添加文件分隔符
-    if (!filePath.endsWith(File.separator))
-      filePath = filePath + File.separator;
-    File dirFile = new File(filePath);
-    if ((!dirFile.exists()) || (!dirFile.isDirectory())) {
-      return false;
-    }
-    boolean flag = true;
-    File[] files = dirFile.listFiles();
-    for (File file : files) {
-      if (file.isFile()) {
-        flag = deleteSingleFile(file.getAbsolutePath());
-        if (!flag)
-          break;
-      }
-      else if (file.isDirectory()) {
-        flag = deleteDirectory(file
-            .getAbsolutePath());
-        if (!flag)
-          break;
-      }
-    }
-    if (!flag) {
-      return false;
-    }
-    if (dirFile.delete()) {
-      return true;
-    } else {
-      return false;
-    }
-  }
-
-}

+ 1 - 1
example/lib/cpdf_reader_widget_controller_example.dart

@@ -169,7 +169,7 @@ class _CPDFReaderWidgetControllerExampleState
       case 'setReadBackgroundColor':
         var currentReadBackgroundColor = await controller.getReadBackgroundColor();
         debugPrint('readBackgroundColor:${currentReadBackgroundColor.toHex()}');
-        await controller.setReadBackgroundColor(theme: CPDFThemes.light);
+        await controller.setReadBackgroundColor(CPDFThemes.light);
         break;
       case 'isChanged':
         bool hasChange = await controller.hasChange();

+ 40 - 40
example/pubspec.lock

@@ -5,10 +5,10 @@ packages:
     dependency: transitive
     description:
       name: args
-      sha256: "7cf60b9f0cc88203c5a190b4cd62a99feea42759a7fa695010eb5de1c0b2252a"
+      sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6
       url: "https://pub.dev"
     source: hosted
-    version: "2.5.0"
+    version: "2.6.0"
   async:
     dependency: transitive
     description:
@@ -60,10 +60,10 @@ packages:
     dependency: transitive
     description:
       name: cross_file
-      sha256: "55d7b444feb71301ef6b8838dbc1ae02e63dd48c8773f3810ff53bb1e2945b32"
+      sha256: "7caf6a750a0c04effbb52a676dce9a4a592e10ad35c34d6d2d0e4811160d5670"
       url: "https://pub.dev"
     source: hosted
-    version: "0.3.4+1"
+    version: "0.3.4+2"
   cupertino_icons:
     dependency: "direct main"
     description:
@@ -84,10 +84,10 @@ packages:
     dependency: transitive
     description:
       name: ffi
-      sha256: "493f37e7df1804778ff3a53bd691d8692ddf69702cf4c1c1096a2e41b4779e21"
+      sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6"
       url: "https://pub.dev"
     source: hosted
-    version: "2.1.2"
+    version: "2.1.3"
   file:
     dependency: transitive
     description:
@@ -100,10 +100,10 @@ packages:
     dependency: "direct main"
     description:
       name: file_picker
-      sha256: a7eed9716c82453da5c09d3a82d4644e7070dd2da81bfe5b6c6873ae4f07cf4f
+      sha256: "16dc141db5a2ccc6520ebb6a2eb5945b1b09e95085c021d9f914f8ded7f1465c"
       url: "https://pub.dev"
     source: hosted
-    version: "8.0.4"
+    version: "8.1.4"
   flutter:
     dependency: "direct main"
     description: flutter
@@ -131,18 +131,18 @@ packages:
     dependency: transitive
     description:
       name: flutter_plugin_android_lifecycle
-      sha256: c6b0b4c05c458e1c01ad9bcc14041dd7b1f6783d487be4386f793f47a8a4d03e
+      sha256: "9ee02950848f61c4129af3d6ec84a1cfc0e47931abc746b03e7a3bc3e8ff6eda"
       url: "https://pub.dev"
     source: hosted
-    version: "2.0.20"
+    version: "2.0.22"
   flutter_svg:
     dependency: "direct main"
     description:
       name: flutter_svg
-      sha256: "7b4ca6cf3304575fe9c8ec64813c8d02ee41d2afe60bcfe0678bcb5375d596a2"
+      sha256: "54900a1a1243f3c4a5506d853a2b5c2dbc38d5f27e52a52618a8054401431123"
       url: "https://pub.dev"
     source: hosted
-    version: "2.0.10+1"
+    version: "2.0.16"
   flutter_test:
     dependency: "direct dev"
     description: flutter
@@ -162,10 +162,10 @@ packages:
     dependency: transitive
     description:
       name: http
-      sha256: "761a297c042deedc1ffbb156d6e2af13886bb305c2a343a4d972504cd67dd938"
+      sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010
       url: "https://pub.dev"
     source: hosted
-    version: "1.2.1"
+    version: "1.2.2"
   http_parser:
     dependency: transitive
     description:
@@ -255,10 +255,10 @@ packages:
     dependency: transitive
     description:
       name: path_parsing
-      sha256: e3e67b1629e6f7e8100b367d3db6ba6af4b1f0bb80f64db18ef1fbabd2fa9ccf
+      sha256: "883402936929eac138ee0a45da5b0f2c80f89913e6dc3bf77eb65b84b409c6ca"
       url: "https://pub.dev"
     source: hosted
-    version: "1.0.1"
+    version: "1.1.0"
   petitparser:
     dependency: transitive
     description:
@@ -364,42 +364,42 @@ packages:
     dependency: "direct main"
     description:
       name: url_launcher
-      sha256: "21b704ce5fa560ea9f3b525b43601c678728ba46725bab9b01187b4831377ed3"
+      sha256: "9d06212b1362abc2f0f0d78e6f09f726608c74e3b9462e8368bb03314aa8d603"
       url: "https://pub.dev"
     source: hosted
-    version: "6.3.0"
+    version: "6.3.1"
   url_launcher_android:
     dependency: transitive
     description:
       name: url_launcher_android
-      sha256: ceb2625f0c24ade6ef6778d1de0b2e44f2db71fded235eb52295247feba8c5cf
+      sha256: f0c73347dfcfa5b3db8bc06e1502668265d39c08f310c29bff4e28eea9699f79
       url: "https://pub.dev"
     source: hosted
-    version: "6.3.3"
+    version: "6.3.9"
   url_launcher_ios:
     dependency: transitive
     description:
       name: url_launcher_ios
-      sha256: "7068716403343f6ba4969b4173cbf3b84fc768042124bc2c011e5d782b24fe89"
+      sha256: "16a513b6c12bb419304e72ea0ae2ab4fed569920d1c7cb850263fe3acc824626"
       url: "https://pub.dev"
     source: hosted
-    version: "6.3.0"
+    version: "6.3.2"
   url_launcher_linux:
     dependency: transitive
     description:
       name: url_launcher_linux
-      sha256: ab360eb661f8879369acac07b6bb3ff09d9471155357da8443fd5d3cf7363811
+      sha256: "4e9ba368772369e3e08f231d2301b4ef72b9ff87c31192ef471b380ef29a4935"
       url: "https://pub.dev"
     source: hosted
-    version: "3.1.1"
+    version: "3.2.1"
   url_launcher_macos:
     dependency: transitive
     description:
       name: url_launcher_macos
-      sha256: "9a1a42d5d2d95400c795b2914c36fdcb525870c752569438e4ebb09a2b5d90de"
+      sha256: "17ba2000b847f334f16626a574c702b196723af2a289e7a93ffcb79acff855c2"
       url: "https://pub.dev"
     source: hosted
-    version: "3.2.0"
+    version: "3.2.2"
   url_launcher_platform_interface:
     dependency: transitive
     description:
@@ -412,42 +412,42 @@ packages:
     dependency: transitive
     description:
       name: url_launcher_web
-      sha256: "8d9e750d8c9338601e709cd0885f95825086bd8b642547f26bda435aade95d8a"
+      sha256: "772638d3b34c779ede05ba3d38af34657a05ac55b06279ea6edd409e323dca8e"
       url: "https://pub.dev"
     source: hosted
-    version: "2.3.1"
+    version: "2.3.3"
   url_launcher_windows:
     dependency: transitive
     description:
       name: url_launcher_windows
-      sha256: ecf9725510600aa2bb6d7ddabe16357691b6d2805f66216a97d1b881e21beff7
+      sha256: "44cf3aabcedde30f2dba119a9dea3b0f2672fbe6fa96e85536251d678216b3c4"
       url: "https://pub.dev"
     source: hosted
-    version: "3.1.1"
+    version: "3.1.3"
   vector_graphics:
     dependency: transitive
     description:
       name: vector_graphics
-      sha256: "32c3c684e02f9bc0afb0ae0aa653337a2fe022e8ab064bcd7ffda27a74e288e3"
+      sha256: "27d5fefe86fb9aace4a9f8375b56b3c292b64d8c04510df230f849850d912cb7"
       url: "https://pub.dev"
     source: hosted
-    version: "1.1.11+1"
+    version: "1.1.15"
   vector_graphics_codec:
     dependency: transitive
     description:
       name: vector_graphics_codec
-      sha256: c86987475f162fadff579e7320c7ddda04cd2fdeffbe1129227a85d9ac9e03da
+      sha256: "2430b973a4ca3c4dbc9999b62b8c719a160100dcbae5c819bae0cacce32c9cdb"
       url: "https://pub.dev"
     source: hosted
-    version: "1.1.11+1"
+    version: "1.1.12"
   vector_graphics_compiler:
     dependency: transitive
     description:
       name: vector_graphics_compiler
-      sha256: "12faff3f73b1741a36ca7e31b292ddeb629af819ca9efe9953b70bd63fc8cd81"
+      sha256: "1b4b9e706a10294258727674a340ae0d6e64a7231980f9f9a3d12e4b42407aad"
       url: "https://pub.dev"
     source: hosted
-    version: "1.1.11+1"
+    version: "1.1.16"
   vector_math:
     dependency: transitive
     description:
@@ -468,10 +468,10 @@ packages:
     dependency: transitive
     description:
       name: web
-      sha256: "97da13628db363c635202ad97068d47c5b8aa555808e7a9411963c533b449b27"
+      sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
       url: "https://pub.dev"
     source: hosted
-    version: "0.5.1"
+    version: "1.1.0"
   webdriver:
     dependency: transitive
     description:
@@ -484,10 +484,10 @@ packages:
     dependency: transitive
     description:
       name: win32
-      sha256: a79dbe579cb51ecd6d30b17e0cae4e0ea15e2c0e66f69ad4198f22a6789e94f4
+      sha256: "68d1e89a91ed61ad9c370f9f8b6effed9ae5e0ede22a270bdfa6daf79fc2290a"
       url: "https://pub.dev"
     source: hosted
-    version: "5.5.1"
+    version: "5.5.4"
   xml:
     dependency: transitive
     description:

+ 5 - 6
lib/document/cpdf_document.dart

@@ -97,16 +97,15 @@ class CPDFDocument {
     return await _channel.invokeMethod('check_owner_unlocked');
   }
 
-  /// Whether the password is correct.
+  /// Whether the owner password is correct.
   ///
   /// example:
   /// ```dart
-  /// var isCorrect = await document.checkPassword('password', isOwnerPassword: true);
+  /// var isCorrect = await document.checkOwnerPassword('password');
   /// ```
-  Future<bool> checkPassword(String password,
-      {bool isOwnerPassword = false}) async {
-    return await _channel.invokeMethod('check_password',
-        {'password': password, 'isOwnerPassword': isOwnerPassword});
+  Future<bool> checkOwnerPassword(String password) async {
+    return await _channel.invokeMethod('check_owner_password',
+        {'password': password});
   }
 
   /// Check the document for modifications