android shouldOverrideUrlLoading deprecated

-- Android 2017. 8. 30. 10:29
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

안드로이드로 웹뷰를 이용해 앱을 만들 때 웹사이트의 주소 컨트롤을 위해 shouldOverrideUrlLoading함수를 이용하고 있는데, 이 함수가 deprecated되어 아직까진 동작을 하지만 버전별로 다르게 코딩해야 하며, 참고한 사이트의 예제를 변경하여 정리해둔다.


@SuppressWarnings("deprecation")
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
    return checkUrl(url);
}

@TargetApi(Build.VERSION_CODES.N)
@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
    String url=request.getUrl().toString();
    return checkUrl(url);
}

public boolean checkUrl(String url) {
    
    if (url.startsWith("tel:")) {
     initiateCall(url);
     return true;
  }
   if (url.startsWith("mailto:")) {
     sendEmail(url.substring(7));
     return true;
  }
  return false;
}


posted by 어린왕자악꿍