【问题标题】:How to read pdf file on webView From my Local device如何从我的本地设备在 webView 上读取 pdf 文件
【发布时间】:2015-03-20 12:30:48
【问题描述】:

我有两种读法 第一个:Pdf 从 url OnWebView 读取:它的工作 第二:Pdf 从本地路径读取 OnWebView:dosent working

(/data/data/com.akfix.navigationdrawer/files/550192f3a1583.pdf)

第二张图表不工作。而且我没有任何错误日志。我在做什么,

这里是我的 Pdf 阅读器课程;

public class PdfReader extends Activity {
String pdf;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_pdf_reader);
    WebView webview = (WebView) findViewById(R.id.webView3);
    Bundle extras = getIntent().getExtras();
    if (extras != null) {
        pdf = extras.getString("pdfUrl");
        if (extras.getString("catalogPdfUrl") != null) {
            String pdfPath = extras.getString("catalogPdfUrl");

            Uri path = Uri.parse(pdfPath);
            viewPdf(path);

        } else {
            webview.getSettings().setJavaScriptEnabled(true);

            pdf.replaceAll("\"", "");
            webview.loadUrl("http://docs.google.com/gview?embedded=true&url=" + pdf);
        }
    }


}

private void viewPdf(Uri file) {
    Intent intent;
    intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(file, "application/pdf");
    try {
        startActivity(intent);
    } catch (ActivityNotFoundException e) {

        AlertDialog.Builder builder = new AlertDialog.Builder(this);
        builder.setTitle("No Application Found");
        builder.setMessage("Download one from Android Market?");
        builder.setPositiveButton("Yes, Please",
                new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {
                        Intent marketIntent = new Intent(Intent.ACTION_VIEW);
                        marketIntent
                                .setData(Uri
                                        .parse("market://details?id=com.adobe.reader"));
                        startActivity(marketIntent);
                    }
                });
        builder.setNegativeButton("No, Thanks", null);
        builder.create().show();
    }
}

}

请帮帮我。

【问题讨论】:

  • 既然是本地的,为什么需要在webview中显示呢?
  • 因为我的老板很旺 :)
  • github.com/JoanZapata/android-pdfview ,我在我的应用程序中使用过这个库,简直太棒了@user3003883
  • 如果对你有帮助,请在下方接受我的回答

标签: android webview pdf-reader


【解决方案1】:

既然是本地的,为什么需要在 webview 中显示呢?

我在我的应用程序中使用了this library,简直太棒了

加载 PDF 文件

pdfView.fromAsset(pdfName)
.pages(0, 2, 1, 3, 3, 3)
.defaultPage(1)
.showMinimap(false)
.enableSwipe(true)
.onDraw(onDrawListener)
.onLoad(onLoadCompleteListener)
.onPageChange(onPageChangeListener)
.load();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-12
    • 2012-07-21
    • 2016-02-04
    • 2019-12-29
    • 2021-01-13
    相关资源
    最近更新 更多