已弃用的方法是否由最新的 API 执行?

Does deprecated methods are executed by the lastest API?

我在做一个至少在 API 19 上工作的项目。

我使用的是 WebView 但是,为了处理错误,我在 WebViewClient 上使用了方法 OnReceivedError 正如您所看到的 here, 有两种方法,一种已弃用,另一种仅适用于 API 23.

我做了一些研究,发现可以解决此代码的问题

        @SuppressWarnings("deprecation")
        @Override
        public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {

        }

        @TargetApi(Build.VERSION_CODES.M)
        @Override
        public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
            onReceivedError(view, error.getErrorCode(), error.getDescription().toString(), request.getUrl().toString());
        }

但是,我想知道在 API 23 上运行的设备上,onReceivedError 是否会执行两次。如果是这种情况,我该怎么做才能执行一次代码,无论 API (min 19, max 23) ?

谢谢

在底层函数中,检查构建版本,return如果版本是M或更高版本