簡體   English   中英

在Webview中加載pdf內容

[英]load content of pdf in Webview

我想在WebView顯示pdf文件的內容。

問題:啟動WebView將打開一個新對話框,無論我要在瀏覽器中還是在pdf查看器中加載pdf。 但是我想直接在WebView加載內容。 我還嘗試使用前綴url嵌入內容,但隨后顯示:無可用預覽。

我的代碼:

public class Changelog_View extends ActionBarActivity {

@Override
protected void onCreate ( Bundle savedInstanceState ) {

    super.onCreate(savedInstanceState);



    String myPdfUrl = "https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2";
    String url = "http://docs.google.com/gview?embedded=true&url=" + myPdfUrl;

    WebView webview = new WebView(this);

    webview.getSettings().setJavaScriptEnabled(true);
    webview.loadUrl(url);


    setContentView(webview);
}
}

我現在使用帶有以下代碼的android-pdfView庫進行了嘗試:

 @Override
protected void onCreate ( Bundle savedInstanceState ) {

    super.onCreate ( savedInstanceState );

   com.joanzapata.pdfview.PDFView pdfView = new com.joanzapata.pdfview.PDFView ( getApplicationContext (), null );
    String myPdfUrl = "https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2";

    pdfView.fromAsset(myPdfUrl)
            .defaultPage(1)
            .showMinimap(false)
            .enableSwipe(true)
            .onLoad(this)
            .onPageChange ( new OnPageChangeListener () {
                @Override
                public void onPageChanged ( int i, int i1 ) {

                }
            } )
            .load();

但是隨后FileNotFoundException出現在地址上: https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2 : FileNotFoundException https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2 FileNotFoundException https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2 FileNotFoundException https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2 FileNotFoundException https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2 該地址直接指向我的onedrive帳戶中的pdf文件。 因此,當我在瀏覽器中鍵入此鏈接時,正在下載pdf文件。

那么如何從地址顯示pdf文件: https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2 : android-pdfView ? android-pdfView https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2 android-pdfView https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2 android-pdfView https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2 android-pdfView https://onedrive.live.com/download?cid=DB700463EBEC6BC9&resid=DB700463EBEC6BC9%2120693&authkey=ALJ-NvyQqMdACpA&em=2和我的應用程序中的android-pdfView庫?

謝謝。

要在Webview中打開pdf,最好通過google doc service顯示pdf

WebView webView=(WebView)findViewById(R.id.webView);
webView.getSettings().setLoadsImagesAutomatically(true);
        webView.getSettings().setJavaScriptEnabled(true);
        webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);
        webView.getSettings().setLoadWithOverviewMode(true);
        webView.getSettings().setUseWideViewPort(true);
        webView.loadUrl("http://drive.google.com/viewerng/viewer?embedded=true&url=" + REPLACE_WITH_YOUR_LINK);

如果沒有WebViewClient,則只能在其他窗口中打開。

mWebView.setWebViewClient(new WebViewClient());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM