如何从Firebase下载HTML文件并在webview中加载?

时间:2017-02-21 09:20:10

标签: android firebase firebase-storage

我已经能够使用Glide从Firebase加载图片,但我不知道如何在我的应用的webview中从Firebase加载HTML文件。我正在使用Android工作室。

 storageRef.getFile(localFile).addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() {
            @Override
            public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) {
                // Local temp file has been created
                // taskSnapshot.getStorage();
     // how to download and show in webview ?
            }
        }).addOnFailureListener(new OnFailureListener() {
            @Override
            public void onFailure(@NonNull Exception exception) {
                // Handle any errors
                Toast.makeText(Home_screen.this, "FAILED",
                        Toast.LENGTH_SHORT).show();
            }
        });
    } catch (IOException e) {
        e.printStackTrace();
    }

1 个答案:

答案 0 :(得分:1)

如果您只想在webview中显示html文件内容,那么它非常简单。
选项为firebase控制台中的特定文件生成URL 。生成文件URL后,使用相同的方法加载webview。

    WebView webView = (WebView)findViewById(R.id.web_view);
     // be cautious before enabling javascript, check security guidelines by google.
    //webView.getSettings().setJavaScriptEnabled(true);
    webView.setWebViewClient(new WebViewClient(){

        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            // on page load started, you may show progress spinner to user.
            //progressBar.setVisibility(View.VISIBLE);
            super.onPageStarted(view, url, favicon);
        }

        @Override
        public void onReceivedError(WebView view,
            WebResourceRequest request, WebResourceError error) {
            // ERROR handling
            super.onReceivedError(view, request, error);

        }

        @Override
        public void onPageFinished(WebView view, String url) {
            // actions on page load
            super.onPageFinished(view, url);
        }

    });
    webView.loadUrl(url);