首页 > 解决方案 > 如果没有加载 url 页面,则加载本地 html (Android Studio)

问题描述

我正在尝试将 URL 加载到 Android Studio 上的 webView。我根据用户输入加载 URL(在下面的代码中是 urlResult)。有时,用户可以输入“https://exampleweb.com”、“https://www.exampleweb.com”、“www.exampleweb.com”、“exampleweb.com”等形式。有时,用户输入的 URL 可能不会加载任何内容(链接未激活、被阻止、不存在等)。发生这种情况时,我想显示一个我已经在本地创建的错误 HTML 页面 (errorpage.html)。我怎样才能做到这一点?谢谢!

这是我的代码:

public class WebResult extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_web_result);

        WebView webView = findViewById(R.id.webView_UrlResult);
        webView.setWebViewClient(new WebViewClient(){
            public void onReceivedError(WebView view, int errorCode, String description, String failingUrl){
                webView.loadUrl("file:///android_asset/errorpage.html");
            }
        });


        if (urlResult.startsWith("https://")) {
            webView.loadUrl(urlResult);

        } else {
            webView.loadUrl("https://" + urlResult);
        }


    }
}

标签: androidhtmlurlwebviewandroid-webview

解决方案


推荐阅读