Android Web-View shouldOverrideUrlLoading () Deprecated. (Alternativa)

He encontrado un método para hacer trabajo mailto en android webview, pero el método es obsoleta.Puede darme un fragmento de código completo del nuevo método. Aquí está el método que encontré en este sitio

El código Java está abajo:

@Override public boolean shouldOverrideUrlLoading(WebView view, String url) { if (url.startsWith("tel:")) { initiateCall(url); return true; } if (url.startsWith("mailto:")) { sendEmail(url.substring(7)); return true; } return false; } 

Pero no funciona cuando tengo la plataforma de destino como Android 7.1.1

One Solution collect form web for “Android Web-View shouldOverrideUrlLoading () Deprecated. (Alternativa)”

El que es nuevo en la N Developer Preview tiene esta firma de método:

 public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) 

El que es compatible con todas las versiones de Android, incluyendo N, tiene esta firma de método:

 public boolean shouldOverrideUrlLoading(WebView view, String url) 

Entonces, ¿por qué debo hacer para que funcione en todas las versiones? Anule el valor obsoleto, el que toma una String como el segundo parámetro.

Para cada api incluyendo Android N usted necesita cambiar su código … Marque esto debajo del código .. apuntará tanto la API más baja con N

 @SuppressWarnings("deprecation") @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { if (url.startsWith("tel:")) { initiateCall(url); return true; } if (url.startsWith("mailto:")) { sendEmail(url.substring(7)); return true; } return false; } @TargetApi(Build.VERSION_CODES.N) @Override public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) { String url=request.getUrl().toString(); if (url.startsWith("tel:")) { initiateCall(url); return true; } if (url.startsWith("mailto:")) { sendEmail(url.substring(7)); return true; } return false; } 
  • El video de youtube no se reproduce en android webview de iframe
  • WebViewClient que no llama shouldOverrideUrlLoading
  • Solución alternativa para setJavaScriptEnabled (true);
  • Android WebView - con proxy autenticado
  • WebView de Android haga clic en abrir en WebView no en un navegador predeterminado
  • Android WebView getContentHeight () siempre devuelve 0
  • Vista web de Android lanza navegador cuando llama a loadurl
  • La sesión SSL no se reutiliza en Android WebView
  • ¿Cómo resaltar el texto permanentemente en la vista web de Android?
  • Transparente WebView no funciona en Android v4.0
  • JPlayer detiene en el centro de la pista y comienza a repetir una sección de la pista
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.