SecurityException with PdfRenderer, comes with password protected pdfs, and than repeats even with normal pdfs










2















If trying to open Password Protected PDF with PdfRenderer API, gives SecurityException and handled accordingly, inside catch block and thenonDestroy basic clean up is done, and comes back to home activity and then navigating a simple non-protected PDF than again the same exception occurs.



Please note, this happens only once any protected file got opened.



Refer below code:



 @Override
protected PdfRenderer doInBackground(Uri... uri)
Uri uriToProcess = uri[0];
try
contentResolver=getContentResolver();
parcelFileDescriptor = contentResolver.openFileDescriptor(uriToProcess, "r");
if(parcelFileDescriptor!=null && mPdfRenderer==null)
mPdfRenderer = new PdfRenderer(parcelFileDescriptor);

catch (FileNotFoundException e)
exceptionMsg="Sorry! No such file or directory found";
handleExceptionInUI(exceptionMsg, progressDialog);
Log.e("$$$$ FNFException", e.toString());

catch (IOException e)
exceptionMsg="Sorry! Something went wrong with IO";
handleExceptionInUI(exceptionMsg, progressDialog);
Log.e("$$$$ IOException", e.toString());
catch (SecurityException e)
if (parcelFileDescriptor!=null)
try
parcelFileDescriptor.close();
parcelFileDescriptor = null;
contentResolver=null;
catch (IOException e1)
e1.printStackTrace();



if (mPdfRenderer!=null)
mPdfRenderer.close();
mPdfRenderer=null;


exceptionMsg="Password protected file, This can't be opened";
handleExceptionInUI(exceptionMsg, progressDialog);
Log.e("$$$$ SecurityException", e.toString());
catch (Exception e)
exceptionMsg="Sorry! Something went wrong.";
handleExceptionInUI(exceptionMsg, progressDialog);
Log.e("$$$$ EXCEPTION", e.toString());

return mPdfRenderer;



Any help cordially appreciated.










share|improve this question




























    2















    If trying to open Password Protected PDF with PdfRenderer API, gives SecurityException and handled accordingly, inside catch block and thenonDestroy basic clean up is done, and comes back to home activity and then navigating a simple non-protected PDF than again the same exception occurs.



    Please note, this happens only once any protected file got opened.



    Refer below code:



     @Override
    protected PdfRenderer doInBackground(Uri... uri)
    Uri uriToProcess = uri[0];
    try
    contentResolver=getContentResolver();
    parcelFileDescriptor = contentResolver.openFileDescriptor(uriToProcess, "r");
    if(parcelFileDescriptor!=null && mPdfRenderer==null)
    mPdfRenderer = new PdfRenderer(parcelFileDescriptor);

    catch (FileNotFoundException e)
    exceptionMsg="Sorry! No such file or directory found";
    handleExceptionInUI(exceptionMsg, progressDialog);
    Log.e("$$$$ FNFException", e.toString());

    catch (IOException e)
    exceptionMsg="Sorry! Something went wrong with IO";
    handleExceptionInUI(exceptionMsg, progressDialog);
    Log.e("$$$$ IOException", e.toString());
    catch (SecurityException e)
    if (parcelFileDescriptor!=null)
    try
    parcelFileDescriptor.close();
    parcelFileDescriptor = null;
    contentResolver=null;
    catch (IOException e1)
    e1.printStackTrace();



    if (mPdfRenderer!=null)
    mPdfRenderer.close();
    mPdfRenderer=null;


    exceptionMsg="Password protected file, This can't be opened";
    handleExceptionInUI(exceptionMsg, progressDialog);
    Log.e("$$$$ SecurityException", e.toString());
    catch (Exception e)
    exceptionMsg="Sorry! Something went wrong.";
    handleExceptionInUI(exceptionMsg, progressDialog);
    Log.e("$$$$ EXCEPTION", e.toString());

    return mPdfRenderer;



    Any help cordially appreciated.










    share|improve this question


























      2












      2








      2








      If trying to open Password Protected PDF with PdfRenderer API, gives SecurityException and handled accordingly, inside catch block and thenonDestroy basic clean up is done, and comes back to home activity and then navigating a simple non-protected PDF than again the same exception occurs.



      Please note, this happens only once any protected file got opened.



      Refer below code:



       @Override
      protected PdfRenderer doInBackground(Uri... uri)
      Uri uriToProcess = uri[0];
      try
      contentResolver=getContentResolver();
      parcelFileDescriptor = contentResolver.openFileDescriptor(uriToProcess, "r");
      if(parcelFileDescriptor!=null && mPdfRenderer==null)
      mPdfRenderer = new PdfRenderer(parcelFileDescriptor);

      catch (FileNotFoundException e)
      exceptionMsg="Sorry! No such file or directory found";
      handleExceptionInUI(exceptionMsg, progressDialog);
      Log.e("$$$$ FNFException", e.toString());

      catch (IOException e)
      exceptionMsg="Sorry! Something went wrong with IO";
      handleExceptionInUI(exceptionMsg, progressDialog);
      Log.e("$$$$ IOException", e.toString());
      catch (SecurityException e)
      if (parcelFileDescriptor!=null)
      try
      parcelFileDescriptor.close();
      parcelFileDescriptor = null;
      contentResolver=null;
      catch (IOException e1)
      e1.printStackTrace();



      if (mPdfRenderer!=null)
      mPdfRenderer.close();
      mPdfRenderer=null;


      exceptionMsg="Password protected file, This can't be opened";
      handleExceptionInUI(exceptionMsg, progressDialog);
      Log.e("$$$$ SecurityException", e.toString());
      catch (Exception e)
      exceptionMsg="Sorry! Something went wrong.";
      handleExceptionInUI(exceptionMsg, progressDialog);
      Log.e("$$$$ EXCEPTION", e.toString());

      return mPdfRenderer;



      Any help cordially appreciated.










      share|improve this question
















      If trying to open Password Protected PDF with PdfRenderer API, gives SecurityException and handled accordingly, inside catch block and thenonDestroy basic clean up is done, and comes back to home activity and then navigating a simple non-protected PDF than again the same exception occurs.



      Please note, this happens only once any protected file got opened.



      Refer below code:



       @Override
      protected PdfRenderer doInBackground(Uri... uri)
      Uri uriToProcess = uri[0];
      try
      contentResolver=getContentResolver();
      parcelFileDescriptor = contentResolver.openFileDescriptor(uriToProcess, "r");
      if(parcelFileDescriptor!=null && mPdfRenderer==null)
      mPdfRenderer = new PdfRenderer(parcelFileDescriptor);

      catch (FileNotFoundException e)
      exceptionMsg="Sorry! No such file or directory found";
      handleExceptionInUI(exceptionMsg, progressDialog);
      Log.e("$$$$ FNFException", e.toString());

      catch (IOException e)
      exceptionMsg="Sorry! Something went wrong with IO";
      handleExceptionInUI(exceptionMsg, progressDialog);
      Log.e("$$$$ IOException", e.toString());
      catch (SecurityException e)
      if (parcelFileDescriptor!=null)
      try
      parcelFileDescriptor.close();
      parcelFileDescriptor = null;
      contentResolver=null;
      catch (IOException e1)
      e1.printStackTrace();



      if (mPdfRenderer!=null)
      mPdfRenderer.close();
      mPdfRenderer=null;


      exceptionMsg="Password protected file, This can't be opened";
      handleExceptionInUI(exceptionMsg, progressDialog);
      Log.e("$$$$ SecurityException", e.toString());
      catch (Exception e)
      exceptionMsg="Sorry! Something went wrong.";
      handleExceptionInUI(exceptionMsg, progressDialog);
      Log.e("$$$$ EXCEPTION", e.toString());

      return mPdfRenderer;



      Any help cordially appreciated.







      android pdf pdfrenderer android-securityexception






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Nov 13 '18 at 12:41









      André Sousa

      1,1781818




      1,1781818










      asked Nov 13 '18 at 11:54









      ByteCountTimByteCountTim

      365




      365






















          1 Answer
          1






          active

          oldest

          votes


















          0














          I had the same problem with my app. The way I solved it was using an https://github.com/TomRoush/PdfBox-Android and load the document and check for password protection. After no InvalidPasswordException has been thrown the file can be safely loaded with the PdfRenderer.






          share|improve this answer






















            Your Answer






            StackExchange.ifUsing("editor", function ()
            StackExchange.using("externalEditor", function ()
            StackExchange.using("snippets", function ()
            StackExchange.snippets.init();
            );
            );
            , "code-snippets");

            StackExchange.ready(function()
            var channelOptions =
            tags: "".split(" "),
            id: "1"
            ;
            initTagRenderer("".split(" "), "".split(" "), channelOptions);

            StackExchange.using("externalEditor", function()
            // Have to fire editor after snippets, if snippets enabled
            if (StackExchange.settings.snippets.snippetsEnabled)
            StackExchange.using("snippets", function()
            createEditor();
            );

            else
            createEditor();

            );

            function createEditor()
            StackExchange.prepareEditor(
            heartbeatType: 'answer',
            autoActivateHeartbeat: false,
            convertImagesToLinks: true,
            noModals: true,
            showLowRepImageUploadWarning: true,
            reputationToPostImages: 10,
            bindNavPrevention: true,
            postfix: "",
            imageUploader:
            brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
            contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
            allowUrls: true
            ,
            onDemand: true,
            discardSelector: ".discard-answer"
            ,immediatelyShowMarkdownHelp:true
            );



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53280501%2fsecurityexception-with-pdfrenderer-comes-with-password-protected-pdfs-and-than%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            0














            I had the same problem with my app. The way I solved it was using an https://github.com/TomRoush/PdfBox-Android and load the document and check for password protection. After no InvalidPasswordException has been thrown the file can be safely loaded with the PdfRenderer.






            share|improve this answer



























              0














              I had the same problem with my app. The way I solved it was using an https://github.com/TomRoush/PdfBox-Android and load the document and check for password protection. After no InvalidPasswordException has been thrown the file can be safely loaded with the PdfRenderer.






              share|improve this answer

























                0












                0








                0







                I had the same problem with my app. The way I solved it was using an https://github.com/TomRoush/PdfBox-Android and load the document and check for password protection. After no InvalidPasswordException has been thrown the file can be safely loaded with the PdfRenderer.






                share|improve this answer













                I had the same problem with my app. The way I solved it was using an https://github.com/TomRoush/PdfBox-Android and load the document and check for password protection. After no InvalidPasswordException has been thrown the file can be safely loaded with the PdfRenderer.







                share|improve this answer












                share|improve this answer



                share|improve this answer










                answered Nov 26 '18 at 14:27









                testtest

                78117




                78117





























                    draft saved

                    draft discarded
















































                    Thanks for contributing an answer to Stack Overflow!


                    • Please be sure to answer the question. Provide details and share your research!

                    But avoid


                    • Asking for help, clarification, or responding to other answers.

                    • Making statements based on opinion; back them up with references or personal experience.

                    To learn more, see our tips on writing great answers.




                    draft saved


                    draft discarded














                    StackExchange.ready(
                    function ()
                    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53280501%2fsecurityexception-with-pdfrenderer-comes-with-password-protected-pdfs-and-than%23new-answer', 'question_page');

                    );

                    Post as a guest















                    Required, but never shown





















































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown

































                    Required, but never shown














                    Required, but never shown












                    Required, but never shown







                    Required, but never shown







                    Popular posts from this blog

                    How to how show current date and time by default on contact form 7 in WordPress without taking input from user in datetimepicker

                    Syphilis

                    Darth Vader #20