2017-04-01 1 views
0

bonjour je veux afficher le fichier pdf dans le webview ou dans l'application externe.
1) J'utilise cette URL https://docs.google.com/gview?embedded=true&url= +pdfurl, mais Google dit « Whoops Il y avait un problen tout en visionnant le document »
2) si j'utilise l'intention d'ouvrir l'URL dans l'application externe alors ils didnot charger le fichier dans l'application externe.
3) si j'utilise l'intention d'ouvrir l'URL dans le navigateur, alors il commence à télécharger le fichier pdf.
Comment ouvrir le fichier pdf dans l'application externe ou dans la taille de webview est supérieure à 25mb

Intent ii=new Intent(Intent.ACTION_VIEW); 
    ii.setDataAndType(Uri.parse(pdf),"text/html"); 
    try { 
     startActivity(ii); 
    }catch (ActivityNotFoundException e) 
    { 
     Toast.makeText(QuranPara.this, "NO Pdf Viewer", Toast.LENGTH_SHORT).show(); 
    } 

ici est l'URL complète https://docs.google.com/gview?embedded=true&url=www.elibrary.alnoorpk.com/PDF%20Books/Lafzi_aur_bamahawrah_terjma_2015/Para%201%20(Lafzi%20aur%20Bamuhawra%20Tarjma).pdf

de contrôle de l'image check the error

+0

Avez-vous déjà téléchargé cette image dans le stockage externe ou que les fichiers PDF sont déjà dans le dossier des actifs? –

+0

mon pdf est dans le serveur, je l'ouvre d'url mais didnot ne fonctionne pas, – Dani

+0

Si votre pdf est ouvert à la lecture et aucun acte de copyright applicable à eux alors pour tout le public, vous pouvez fournir la fonctionnalité pour télécharger le pdf sur les dispositifs. –

Répondre

0

Pour afficher dans WebView essayer quelque chose comme ça

String pdf = "http://www.adobe.com/devnet/acrobat/pdfs/pdf_open_parameters.pdf"; 
    webview.loadUrl("http://drive.google.com/viewerng/viewer?embedded=true&url=" + pdf); 

Pour afficher dans le navigateur essayer quelque chose comme cette

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(pdf_url)); 
startActivity(browserIntent); 
+0

merci pour respone. s'il vous plaît ouvrir mon URL, il vous donnera une erreur. Votre fichier pdf est petit, c'est pourquoi c'est ouvert. – Dani

0

Si vos fichiers sont dans des fichiers, copiez-les d'abord sur le stockage externe. J'espère que vous avez géré le flux des autorisations.

Essayez le code suivant pour offline

File pdfFile = new File(Environment.getExternalStorageDirectory(),"pdfName.pdf");//Pdf file path 
      if (pdfFile.exists()) //Checking for the file is exist or not 
      { 
       Uri path = Uri.fromFile(pdfFile); 
       Intent objIntent = new Intent(Intent.ACTION_VIEW); 
       objIntent.setDataAndType(path, "application/pdf"); 
       objIntent.setFlags(Intent. FLAG_ACTIVITY_CLEAR_TOP); 
       startActivity(objIntent);//Staring the pdf viewer 
      } else { 

       Toast.makeText(getActivity(), "The file not exists! ", Toast.LENGTH_SHORT).show(); 

      } 

Effectuez les opérations suivantes pour la WebView l'option si vous choisissez cette

WebView webview = (WebView) findViewById(R.id.webview); 
webview.getSettings().setJavaScriptEnabled(true); 
String pdf = "online pdf link"; 
webview.loadUrl("http://drive.google.com/viewerng/viewer?embedded=true&url=" + pdf); 

Mais rappelez-vous si vous utilisez google docs pour visualiser la pdf ou tout autre document, google docs peut vous jeter l'erreur indiquant

You've reached the bandwidth limit for viewing or downloading files that aren't in Google Docs format..... So doesn't seem reliable

Alors, être prudent avec google doc visualisation

+0

taille de mon pdf est 25mb, vérifiez la mise à jour que – Dani