代码之家  ›  专栏  ›  技术社区  ›  Herel Adrastel

不推荐使用的方法是否由最新的API执行?

  •  0
  • Herel Adrastel  · 技术社区  · 9 年前

    我从事的项目至少在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(最小值19,最大值23)?

    谢谢

    1 回复  |  直到 9 年前
        1
  •  3
  •   Gabe Sechan    9 年前

    在较低级别的函数中,检查生成版本,如果版本为M或更高版本,则立即返回。