¿Cómo puedo detectar cuándo una página WebView intenta cerrar?

Tengo un WebView en el que estoy cargando la página de php facebook sharer. Esta página no tiene ninguna forma de confirmación, simplemente cierra la ventana una vez que el usuario ha compartido o cancelado.

Dado que se carga en una vista web no hay nada que "cerrar" perse, por lo que, tengo que detectar la ventana tratando de cerrar y actuar en que la devolución de llamada.

De mis diversas búsquedas parece que la manera de manejar esto es a través de un WebChromeClient. Por lo tanto, estoy intentando lo siguiente, pero la llamada nunca se llama. Estoy obviamente perdiendo algo, pero no sé qué. Se siente como que el evento onCloseWindow debería ser Overriden, pero eso hace que eclipse se queje (razonablemente) que necesito superar la instancia, que la documentación no parece sugerir es posible.

Toda la ayuda apreciada.

[EDIT] oh, y acabo de intentar cambiar el orden de las acciones, la configuración de WebChromeClient antes de llamar a la url, y (como esperaba) que no alteró el comportamiento de ninguna manera.

webview.getSettings().setJavaScriptEnabled(true); webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true); webview.setWebViewClient(new WebViewClient()); webview.loadUrl("http://www.facebook.com/sharer/sharer.php?u=http://EXTRACTED.com?img_id=abc");// + getIntent().getStringExtra("userId")); WebChromeClient wbc = new WebChromeClient(){ public void onCloseWindow(Window w){ Log.d(TAG, "Window trying to close"); } }; webview.setWebChromeClient(wbc); 

Qué hay de malo en:

  public void onCloseWindow(WebView w){ super.onCloseWindow(w); Log.d(TAG, "Window trying to close"); } 
  • Cómo habilitar Flash Plugin en Webview?
  • Múltiples instancias de webview destacadas vistas en dispositivos cromados al abrir y cerrar la aplicación android de Córdoba
  • Medir una vista antes de renderizarla y obtener un espacio remanente (Android)
  • Android: Cómo hacer referencia a imágenes de activos desde una página HTML remotamente cargada en webview
  • Abrir vínculos externos en el navegador con la vista web de Android
  • Mostrar vídeo HTML5 en pantalla completa
  • Detectar error de vista Web y mostrar mensaje
  • Android 4.4 dando ERR_CACHE_MISS error en onReceivedError para WebView volver
  • Appcache en Android Webview no descargar fuentes
  • Android WebView JellyBean -> No debería suceder: no se encontraron nodos de pruebas basadas en rect
  • ¿Cómo acceder a los activos locales desde una URL remota en Android WebView?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.