Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Kotlin将html从内部存储加载到webview_Android_Kotlin_Webview_Android Internal Storage - Fatal编程技术网

Android Kotlin将html从内部存储加载到webview

Android Kotlin将html从内部存储加载到webview,android,kotlin,webview,android-internal-storage,Android,Kotlin,Webview,Android Internal Storage,我想将一个html页面从我的内部存储加载到一个webview中,但我找不到任何关于如何执行的示例。以下是我能做的: webView.loadUrl("file:///android_asset/article_0028_0071.html") 这是可行的,但我必须手动将页面添加到资产。然后我在内部存储器中得到了相同的文件,完整路径是:/data/user/0/com.example.app/files/articles/article\u 0028\u 0071.html 所以我试过: pat

我想将一个html页面从我的内部存储加载到一个webview中,但我找不到任何关于如何执行的示例。以下是我能做的:

webView.loadUrl("file:///android_asset/article_0028_0071.html")
这是可行的,但我必须手动将页面添加到资产。然后我在内部存储器中得到了相同的文件,完整路径是:/data/user/0/com.example.app/files/articles/article\u 0028\u 0071.html 所以我试过:

path = "/data/user/0/com.example.app/files/articles/article_0028_0071.html"
webView.loadUrl(path)
这只给了我一页白纸,没有错误。也试过了“file:///articles/article_0028_0071.html“但同样的结果没有错误,布兰克·佩奇


因此,我想知道如何编写从内部存储访问html的路径?

您可以根据需要处理各种类型的url,只需通过自定义WebViewClient设置您的webview即可

webview.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView webView, String url) {
            if (url.startWith("file:")) {                     
                //do whatever you need
                }
                return false;
            }else if(url.startWith("http"){....etc

您只需要在路径之前添加文件://

path = "file:///data/user/0/com.example.app/files/articles/article_0028_0071.html"
webView.loadUrl(path)
这工作做得很好