如何在Android中以编程方式检查在存储中下载的pdf文件是否无效/损坏?

时间:2019-01-16 07:55:53

标签: java android

我正在将PDFRendererParcelFileDescriptor一起使用,以将Pdf显示为图像。如果提供了有效的Pdf文件,它将平稳运行。但是,在某些情况下,如果为其提供了无效/损坏的pdf文件,则该应用程序会崩溃并显示:

Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0

在这种情况下也不会引发异常。

有什么办法可以确定pdf在android中是无效还是损坏?

try {
        ParcelFileDescriptor mFileDescriptor = ParcelFileDescriptor.open(file, ParcelFileDescriptor.MODE_READ_ONLY);
        renderPage();
    } catch (FileNotFoundException e) {
                e.printStackTrace();
}

private void renderPage() {

   if (mFileDescriptor != null) {
       try {
           mPdfRenderer = new PdfRenderer(mFileDescriptor);
           showPage(mPageIndex);
         } catch (Exception e) {
            e.printStackTrace();
       }
   }
}

0 个答案:

没有答案