有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java Online PDF可用于脱机查看(缓存)

我最初使用webview在线查看课堂笔记(用HTML创建)。 缓存非常直接。 这是代码

    webView = (WebView)findViewById(R.id.webView);
    if (webView != null) {
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setAppCacheMaxSize( 5 * 1024 * 1024 ); // 5MB
        webView.getSettings().setAppCachePath( getApplicationContext().getCacheDir().getAbsolutePath() );
        webView.getSettings().setAllowFileAccess( true );
        webView.getSettings().setAppCacheEnabled( true );
        webView.getSettings().setJavaScriptEnabled( true );
        webView.getSettings().setCacheMode( WebSettings.LOAD_DEFAULT ); // load online by default
    }

    webView.setWebViewClient(new WebViewClient(){
        @Override
        public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
            super.onReceivedError(view, request, error);
            Toast.makeText(NoteViewActivity.this, error.toString(), Toast.LENGTH_SHORT).show();
        }

        @Override
        public void onPageFinished(WebView view, String url) {
            findViewById(R.id.loadingPanel).setVisibility(View.GONE); //Make progress disappear
        }
    });

    if ( !isNetworkAvailable() ) { // loading offline
        webView.getSettings().setCacheMode( WebSettings.LOAD_CACHE_ELSE_NETWORK );
    }
    webView.loadUrl(getIntent().getStringExtra("NOTE_LINK"));

那么,有没有办法用GitHub的PDFViewer实现同样的功能呢

com.github.barteksc.pdfviewer.PDFView

使用pdfView.fromUri(uri)


共 (1) 个答案

  1. # 1 楼答案

    使用您最喜欢的HTTP客户端API,自己下载PDF。然后,使用fromFile()而不是fromUri()