React Native 查看 PDF

React Native View PDF

我有一个 react-native 应用程序,它使用 Linking 打开 PDF 文档,如下所示:

const handlePress = () => {
    Linking.openURL(
      "https://link/to/file.pdf"
    );
};

以上代码的问题在于它打开网络浏览器并下载文件。有什么方法可以通过设备的默认 PDF 查看器打开文件吗?

您可以使用 rn-fetch-blob 下载 PDF 到您的 phone 存储空间,然后使用默认的 PDF 查看器打开它,如下所示:

import { Platform } from "react-native";
import RNFetchBlob from 'rn-fetch-blob'

const android = RNFetchBlob.android;

RNFetchBlob.config({
  addAndroidDownloads: {
    useDownloadManager: true,
    title: "awesome.pdf",
    description: "An awesome PDF",
    mime: "application/pdf",
    mediaScannable: true,
    notification: true,
  },
})
  .fetch("GET", `http://www.example.com/awesome.pdf`)
  .then((res) => {
    const path = res.path();
    if (Platform.OS === "ios") {
      RNFetchBlob.ios.openDocument(path);
    } else {
      android.actionViewIntent(path, "application/pdf");
    }
  });