Spanish Problema con WebView

Thalia

Member
Hola a todos, estoy creando un proyecto "sencillo", pero tuve una dificultad que no me deja avanzar:

Tengo un webview donde cargo una página con el user agent de computadora, todo bien, hasta que oprimo un botón y me abre un pop-up para introducir datos, al hacer esto el botón de confirmación queda al borde de la página, por lo que es inalcanzable (con el zoom al 100% queda cortada una parte de la página).

Con Chrome (activando el sitio se escritorio) no tengo ningún problema.

Ya probé con todos los users agent que encontré en la web, y absolutamente todos me causan el mismo conflicto. Empecé a ver el webkit, pero ni siquiera pude cargar el webview (no se muestra), y como no hay ejemplo o algún proyecto, decidí publicar mi pregunta, tal vez la solución es más simple de lo que pienso. Muchas gracias por cualquier ayuda.
 
Last edited:

Thalia

Member
Una opción, seria mostrar un panel con botón Android, y que cuando se oprima, por medio de javascript haga click en el webview.
El Detalle es encontrar la función que lo haga. Es como cuando en el móvil sale una ventana flotante que no cabe en la pantalla y no se puede acceder al botón cerrar (típico "suscribete a nuestro news letter"), en mi caso no puedo acceder al botón confirmar para enviar un formulario, si oprimo enter por medio del teclado solo me hace un salto de línea.
 

Thalia

Member
Ya he probado con todas las ideas que he encontrado en el foro, la única que no pude hacer funcionar fue la de implementar un webkit con Chrome y darle el sitio de escritorio, ya que con tanta biblioteca independiente que contiene el webkit se hace demasiado confuso y más no habiendo ejemplos.
 

drgottjr

Expert
Licensed User
Longtime User
favor de cargar el proyecto (.zip desde el IDE) o al menos dinos el url del sitio para que veamos (el dedo en la llaga, por asi decirlo)
 

Thalia

Member
favor de cargar el proyecto (.zip desde el IDE) o al menos dinos la url del sitio para que veamos (el dedo en la llaga, por asi decirlo)
Sin irnos tan lejos y con algo comun, vamos a poner el ejemplo (real, porque lo probe), algo como entrar a Facebook desde el navegador, abrir una imagen y oprimir editar publicación:

A) Con webview: No hay opción de editar.

B) Cambiando el agente de usuario: Deja editar, pero la ventana flotante que se muestra sale incompleta.

C) En Chrome con vista de escritorio: Deja editar, y la ventana flotante se muestra completa.
 

Thalia

Member
Actualizo: Intente con este codigo:

B4X:
Sub Redimensionar
#if B4A
    Dim jo As JavaObject = Me
    jo.InitializeContext 'comment this line if calling this code from class
    jo.RunMethod("zoom", Array(miWebview))
    
    Log("redimensionar")
#End If
      
End Sub

#if B4A
#if Java
public void zoom(android.webkit.WebView wv) {
   wv.getSettings().setUseWideViewPort(true);
   wv.setInitialScale(1);
}
#End If
#End If

No me hizo diferencia. El codigo es muy simple, pongo un webview en el designer, en Activity_Create establezco setLoadWithOverviewMode = True, mi user agent:
wvs.setUserAgentString(miWebview, "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36"). Donde lanzo mi Webview agrego:

JavaScriptEnabled = True
addWebChromeClient

Y alli cargo mi url y muestro el webview, en PageFinished lanzo la funcion con el codigo que deje arriba (Redimensionar).

Si alguien tuviese algun ejemplo de WebKit creo seria mas sencillo (segun lei en el foro es mas facil cargar paginas con sitios de escritorio iguales a como se verian en google chrome). Gracias nuevamente por cualquier orientacion.
 
Top