2014-11-06 94 views
0

我想从我的SD卡的webview中加载pdf,但它给出了消息
对不起,我们无法在原始来源找到该文档,请验证文档仍然存在!在webview中打开sd卡的pdf

我也用Google搜索这一点,但敲我的头了很多后,我得到了什么比这one,这one ...

webView = (WebView) findViewById(R.id.webview_compontent); 
    fill_form = (Button) findViewById(R.id.fill_form); 

    fill_form.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View arg0) { 
     // TODO Auto-generated method stub 
     Toast.makeText(getApplicationContext(), "In Progress", Toast.LENGTH_LONG).show(); 
    } 
}); 


    webView.getSettings().setJavaScriptEnabled(true);  
    webView.getSettings().setLoadWithOverviewMode(true); 
    // webView.getSettings().setUseWideViewPort(true);   
    webView.setWebViewClient(new WebViewClient(){ 

     @Override 
     public boolean shouldOverrideUrlLoading(WebView view, String url) { 
      progDailog.show(); 
      view.loadUrl(url); 

      return true;     
     } 
     @Override 
     public void onPageFinished(WebView view, final String url) { 
      progDailog.dismiss(); 
     } 
    }); 
// String fileurl = Environment.getExternalStorageDirectory()+File.separator +"pk.pdf"; 
    File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+File.separator+"pk.pdf"); 
    Uri fileurl = (Uri.fromFile(file)); 

    String Url = "http://docs.google.com/gview?embedded=true&url=" + fileurl; 
    webView.loadUrl(Url); 
} 

请给任何想法如何做到这一点?(我不想要使用任何应付渲染库。)

+1

与iPhone不同,android的webkit并不强大,它可以打开PDF文件。您需要使用第三方库来打开PDF文档。我会推荐MuPDF库在Android平台上查看PDF文件。 – Tushski 2014-11-06 12:34:47

+0

这篇文章帮助我https://stackoverflow.com/a/43087727/2416823。它脱机工作,没有谷歌pdf查看器! – user2416823 2017-08-21 14:03:24

回答

1

我不认为webview可以为你加载pdf。 Sso你仍然有两个选择: 1.尝试要求其他应用程序为您查看此PDF。 2.如果GNU策略适合你,你可以试试这个图书馆https://github.com/JoanZapata/android-pdfview

+0

:(但tats我想做的事情:( – 2014-11-06 12:33:27

+1

你可以尝试联系谷歌关于这个问题在WebView上,并要求他们在未来的版本中包括它,但你可以尝试库我已经建议它的GNU条款免费。 – Serge 2014-11-06 12:43:48