2013-06-06 7 views
1

J'essaie d'ouvrir le pdf, mais quand j'appuie sur le bouton, rien ne se passe. Où est mon erreur?Android: Comment ouvrir un pdf?

OnClickListener oclBt2 = new OnClickListener(){ 
      public void onClick(View v) { 
       File file = new File("http://testserv1.p.ht/1/ksu016.pdf"); 

       if (file.exists()) { 
       Uri path = Uri.fromFile(file); 
       Intent intent = new Intent(Intent.ACTION_VIEW); 
       intent.setDataAndType(path, "application/pdf"); 
       intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
       startActivity(intent); 
       try { 
        startActivity(intent); 
        } 
       catch (ActivityNotFoundException e) { 
        e.printStackTrace(); 
        } 
       } 
      } 
     }; 

Je corrige mon code, mais il ne fonctionne pas encore :(quand j'appuie sur le bouton, apparaît le window (Désolé, mais ma réputation ne permet pas d'afficher des images)

OnClickListener oclBt2 = new OnClickListener(){ 
      public void onClick(View v) { 
       Uri path = Uri.parse("http://testserv1.p.ht/1/ksu016.pdf"); 
       Intent intent = new Intent(Intent.ACTION_VIEW); 
       intent.setDataAndType(path, "application/pdf"); 
       intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

       try { 
       startActivity(intent); 
       } 
       catch (ActivityNotFoundException e) {    
       mWebView.loadUrl("https://docs.google.com/gview?embedded=true&url=http://hostforandroid.elitno.net/pdf-test.pdf"); 
       setContentView(mWebView); 
       }    
      } 
     }; 

Répondre

1

d'abord, File est pour les fichiers locaux, non http URL. Utilisez Uri.parse("http://testserv1.p.ht/1/ksu016.pdf"); pour obtenir un Uri pointant vers une URL http.

en second lieu, il peut y avoir pas de téléspectateurs PDF qui sont mis en place pour télécharger directement à partir une URL HTTP. Pour une meilleure compatibilité, vous pouvez d'abord télécharger le fichier PDF (en utilisant DownloadManager ou votre propre code client HTTP), puis afficher le fichier PDF local.

+0

Regardez mon nouveau code, s'il vous plaît –

+0

@RostislavShtanko: Vous n'avez pas de visionneuse de PDF installé qui peut gérer les URL http: // '. Je n'ai jamais essayé de voir quelque chose à partir de 'docs.google.com' et je ne peux donc pas commenter pourquoi il échoue, sauf peut-être que vous n'avez pas la permission' INTERNET'. – CommonsWare

+0

Internet est ok. Je ne me suis pas désintéressé de la visionneuse PDF. Je pense, il a installé –

Questions connexes