Actividad de la llamada de WebView SDK de Android

Estoy intentando iniciar una Actividad al hacer clic en un enlace dentro de un componente de WebView.

Mi Webview se carga dentro de Main.java y me gustaría lanzar SubActivity.java al hacer clic en un enlace dentro del sitio web que está en Main.java ?

Además, ¿cómo puedo pasar parámetros a esta actividad?

Ejemplo : inspection://Project/1

"Inspección" es el nombre de mi solicitud, la inspection es la actividad que me gustaría lanzar y 1 es la identificación que me gustaría tener.

Puede utilizar la función addJavaScriptInterface de WebView para permitir que JavaScript controle su aplicación (en este caso, para permitir que JavaScript active una intención cuando se hace clic en un enlace).

Para hacer esto usted necesita pasar una instancia de clase para enlazar a JavaScript, esto podría ser algo como lo siguiente:

 private final class JsInterface { public void launchIntent(final String payload) { Activity.this.runOnUiThread(new Runnable() { @Override public void run() { // use the payload if you want, attach as an extra, switch destination, etc. Activity.this.startActivity(new Intent(Activity.this, SomeOtherActivity.class)); } }); } } 

A continuación, añade que a la WebView con algo en esta línea:

 webView.addJavascriptInterface(js, "Android"); 

Luego, en JavaScript de la WebView, sólo usa el método "launchIntent" del nuevo objeto "Android".

Una opción es anular la carga de la URL de la vista web y recoger el clic que desea iniciar la nueva actividad. Compruebe el uso de un WebViewClient subclasificado en los documentos:

http://developer.android.com/resources/tutorials/views/hello-webview.html

Otra opción es vincular su actividad a un esquema de URL personalizado. Es bastante común hacer OAuth cliente, a menudo a través del navegador en lugar de un WebView, pero debería funcionar de manera similar. Aquí hay un ejemplo completo:

https://github.com/brione/Brion-Learns-OAuth

Que muestra cómo vincular el manejador del esquema url, así como el manejo de obtener lanzado a través de la Intención que genera (ver onResume () en OAUTH.java).

Primero Agregue el método javascript en el botón de su página web onclick () La función definida a continuación.

 function showAndroidToast(toast) { AndroidFunction.showToast(toast); } 

Android Código está aquí para javascript Interfaz ..

 public class MyJavaScriptInterface { Context mContext; private Activity activity; public MyJavaScriptInterface(Activity activiy) { this.activity = activiy; } @JavascriptInterface public void showToast(String toast){ Intent i=new Intent(getApplicationContext(), Subactivity.class); i.putExtra("data", "tosecondActivity"); startActivity(i); 

}

  • ¿Cómo puedo hacer que webview use el manifiesto de caché HTML5?
  • Android WebView + loadUrl con javascript + onPageFinished = lag
  • Desactivar la barra de direcciones en la vista web de Android
  • Cómo obtener texto seleccionado en WebView Android
  • Tocar el campo de formulario en WebView no muestra el teclado virtual
  • Transiciones de la página siguiente / anterior de WebView
  • Prevención de la autolinking de correos electrónicos y URLs en un WebView de Android
  • Android: WebView cargar imagen / contenido en el centro
  • Guardar datos desde un WebView
  • Abrir enlace desde Webview de Android en el navegador normal como popup
  • WebView no carga mi HTML la segunda vez?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.