【问题标题】:Loading local html file in webView android在webView android中加载本地html文件
【发布时间】:2014-01-19 08:35:28
【问题描述】:

我必须将现有的 html 文件加载到位于文件系统中此路径的 WebView 中:

/data/data/com.example.example/files/file.html

但是,当WebView 加载它时,我什么也看不到。 谁能帮我?

WebView 代码(假设路径是我上面写的路径):

 WebView webView = (WebView)findViewById(R.id.webView1);

  File htmlFile = new File(path);
    if(htmlFile.exists())
    {
        webView.loadUrl(htmlFile.getAbsolutePath());

    }

【问题讨论】:

  • htmlFile.exists() 是否返回 true?如果是这样,您在 logcat 中看到了什么?
  • htmlFile.exists() 总是返回 true... 我试图将日志放入 if 并且 logcat 显示该日志...

标签: android html file webview local


【解决方案1】:

试试这个,添加 file:/// 并做一些不同的事情:

WebView webView = (WebView)findViewById(R.id.webView1);
webview.loadUrl("file:///data/data/com.example.example/files/file.html");  

但是,您可以将文件放入源代码中的assets 文件夹中,然后执行以下操作:

WebView webView = (WebView)findViewById(R.id.webView1);
webview.loadUrl("file:///android_asset/file.html");

【讨论】:

    【解决方案2】:

    html 文件应放在 assets 文件夹中,该文件夹将属于您项目的根目录。

    所以移动你的文件以防日蚀

    assets/index.html
    

    在 Android Studio 项目中使用此文件夹:

    /app/src/main/assets/index.html
    

    现在使用

    WebView wv= (WebView)findViewById(R.id.webView1);
    wv.loadUrl("file:///android_asset/index.html");
    

    【讨论】:

    • 在我的项目中没有名为 android_asset 的文件夹
    • 然后创建资产文件夹
    【解决方案3】:

    您需要实现一个 ContentProvider 来将本地文件映射到 uri,如此链接 how to display a local file into Android Webview 中所述

    或者您只需从 Assets 文件夹中加载任何 html 页面,如下所示:

     WebView wv= (WebView)findViewById(R.id.webView1);
     wv.loadUrl("file:///android_asset/yourfile.html");
     wv.getSettings().setJavaScriptEnabled(true);
    

    【讨论】:

      【解决方案4】:

      试试这个:

      web = (Webview) findViewById(R.id.webview);
      web.setWebClient(new WebViewClient());
      web.getSettings().setJavaScriptEnabled(true);
      web.getSettings().setAllowFileAccess(true);
      web.getSettings().setAllowFileAccessFromFileURLs(true);
      

      【讨论】:

        猜你喜欢
        • 2014-02-28
        • 1970-01-01
        • 2022-06-25
        • 1970-01-01
        • 1970-01-01
        • 2011-05-31
        • 2020-01-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多