PSPDFKit Flutter

Flutter Intro

PSPDFKit for Flutter 在 pub.devGitHub 上均可获取。

如果您是 Flutter 新手,请务必查看我们的 Flutter 博文。

如需了解我们的快速入门指南,请访问我们的网站

平台特定的 README 文件适用于 AndroidiOS

设置

集成到新的 Flutter 应用

Android

要求

入门

  1. 使用 flutter CLI 创建一个名为 pspdfkit_demo 的 Flutter 项目

    flutter create --org com.example.pspdfkit_demo pspdfkit_demo
  2. 在终端应用中,将当前工作目录更改为您的项目目录

    cd pspdfkit_demo
  3. 打开项目的主活动类 android/app/src/main/kotlin/com/example/pspdfkit_demo/pspdfkit_demo/MainActivity.kt

    open android/app/src/main/kotlin/com/example/pspdfkit_demo/pspdfkit_demo/MainActivity.kt
  4. 将基类从 FlutterActivity 修改为 FlutterFragmentActivity

     package com.example.pspdfkit_demo.pspdfkit_demo
    
    -import io.flutter.embedding.android.FlutterActivity
    +import io.flutter.embedding.android.FlutterFragmentActivity
    
    -class MainActivity: FlutterActivity() {
    +class MainActivity: FlutterFragmentActivity() {
     }
  5. 打开项目的 Gradle 构建文件 android/build.gradle

    open android/build.gradle
  6. 修改 buildscript 部分中的 Kotlin 版本

     buildscript {
    -    ext.kotlin_version = '1.3.50'
    +    ext.kotlin_version = '1.5.31'
         repositories {
             google()
             mavenCentral()
         }
     ...
  7. 打开应用的 Gradle 构建文件 android/app/build.gradle

    open android/app/build.gradle
  8. 修改最低 SDK 版本,并启用 multidex。所有这些都在 android 部分中完成

     android {
         defaultConfig {
    -        minSdkVersion flutter.minSdkVersion
    +        minSdkVersion 21
             ...
    +        multiDexEnabled true
         }
     }
  9. 打开 pubspec.yaml

    open pubspec.yaml
  10. pubspec.yaml 中添加 PSPDFKit 依赖项

     dependencies:
       flutter:
         sdk: flutter
    +  pspdfkit_flutter: any
  11. 在终端应用中,运行以下命令获取所有包

```bash
flutter pub get
```
  1. 然后运行以下命令升级依赖项

    flutter pub upgrade
  2. 打开 lib/main.dart 并用 demo_project_main.dart.txt 的内容替换全部内容。这个简单的示例将从本地设备文件系统中加载 PDF 文档。

  3. 将您要显示的 PDF 文档添加到项目中的 assets 目录。

    • 首先创建一个 PDFs 目录

      mkdir PDFs
    • 示例文档 移入新创建的 PDFs 目录,并将其重命名为 Document.pdf

      cp ~/Downloads/PSPDFKit.pdf PDFs/Document.pdf
  4. pubspec.yaml 中指定 assets 目录

     # The following section is specific to Flutter.
     flutter:
    +  assets:
    +    - PDFs/
     ...
  5. 启动您的 Android 模拟器或连接设备。

  6. 运行应用:

    flutter run

iOS

要求

入门

  1. 使用 flutter CLI 创建一个名为 pspdfkit_demo 的 Flutter 项目

    flutter create --org com.example.pspdfkit_demo pspdfkit_demo
  2. 在终端应用中,将当前工作目录更改为您的项目目录

    cd pspdfkit_demo
  3. 在 Xcode 中打开 ios 文件夹中的 Runner.xcworkspace

    open ios/Runner.xcworkspace
  4. 确保 iOS Deployment Target 设置为 14.0 或更高版本。

    iOS Deployment Target

  5. Info.plist 中将“View controller-based status bar appearance”更改为 YES。

    iOS View controller-based status bar appearance

  6. pubspec.yaml 中添加 PSPDFKit 依赖项

     dependencies:
       flutter:
         sdk: flutter
    +  pspdfkit_flutter:
  7. 在终端应用中,运行以下命令获取所有包

    flutter pub get
  8. 然后运行以下命令升级依赖项

    flutter pub upgrade
  9. 在文本编辑器中打开项目的 Podfile

    open ios/Podfile
  10. 将平台更新为 iOS 14 并添加 PSPDFKit Podspec

    -# platform :ios, '9.0'
    + platform :ios, '14.0'
     ...
     target 'Runner' do
       use_frameworks!
       use_modular_headers!`
    
       flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__))
    +  pod 'PSPDFKit', podspec:'https://customers.pspdfkit.com/pspdfkit-ios/latest.podspec'
     end
  11. 打开 lib/main.dart 并用 demo_project_main.dart.txt 的内容替换全部内容。这个简单的示例将从本地设备文件系统中加载 PDF 文档。

  12. 将您要显示的 PDF 文档添加到项目中的 assets 目录。

    • 首先创建一个 PDFs 目录

      mkdir PDFs
    • 示例文档 移入新创建的 PDFs 目录,并将其重命名为 Document.pdf

      cp ~/Downloads/PSPDFKit.pdf PDFs/Document.pdf
  13. pubspec.yaml 中指定 assets 目录

     # The following section is specific to Flutter.
     flutter:
    +  assets:
    +    - PDFs/
     ...
  14. 运行 flutter emulators --launch apple_ios_simulator 以启动 iOS 模拟器。

  15. 运行应用:

    flutter run

示例应用

要查看 PSPDFKit Flutter 的实际效果,请查看我们的 Flutter 示例应用

在 Flutter 应用中显示 PDF 文档就像这样简单

```dart
Pspdfkit.present('file:///path/to/Document.pdf');
```

升级到完整的 PSPDFKit 许可证密钥

PSPDFKit 是一个商业产品,在生产环境中使用时需要购买许可证密钥。默认情况下,此库将在演示模式下初始化,在每个 PDF 上放置水印,并将使用时间限制为 60 分钟。

要为生产使用购买许可证,请通过 https://pspdfkit.com/sales/form/ 与我们联系。

要使用许可证密钥初始化 PSPDFKit,请在调用任何其他 PSPDFKit API 或功能之前,调用以下任一方法:

要为 Android 和 iOS 设置许可证密钥,请使用:

await Pspdfkit.setLicenseKeys("YOUR_FLUTTER_ANDROID_LICENSE_KEY_GOES_HERE", "YOUR_FLUTTER_IOS_LICENSE_KEY_GOES_HERE");

要为当前运行的平台设置许可证密钥,请使用:

await Pspdfkit.setLicenseKey("YOUR_FLUTTER_LICENSE_KEY_GOES_HERE");

从先前版本迁移

要升级您应用中的 PSPDFKit for Flutter,请参阅 升级和迁移指南 部分。

故障排除

有关设置 PSPDFKit for Flutter 时可能遇到的常见问题的故障排除,请参阅 故障排除 部分。

GitHub

查看 Github