Como interceptar cargas de URL no WebView (android)?

Eu tenho um WebView no qual eu carrego uma página com um link personalizado (como app: // action). Eu registrei os esquemas de url no arquivo de manifesto e quando clico no link, o método onResume () da minha Activity é chamado com os dados corretos e funciona OK.

Meu problema é que o WebView ainda tenta carregar o link e meu WebView acaba exibindo uma mensagem "Página da Web indisponível". Eu não quero isso.

Como posso evitar que o WebView carregue o URL?

Aqui está meu código:

WebView banner = ...
banner.setWebViewClient(new WebViewClient() {

    @Override
    public void onLoadResource(WebView view, String url) {

        if (url.startsWith("app://")) {

            Intent i = new Intent(Intent.ACTION_VIEW, Uri.parse(url), getContext(), Main.class);
            //startActivity(i);
        }
    }
}

banner.loadUrl("url_to_the_banner");

questionAnswers(2)

yourAnswerToTheQuestion