Xamarin.forms: [macOS] WebView no puede navegar

Creado en 3 nov. 2018  ·  3Comentarios  ·  Fuente: xamarin/Xamarin.Forms

Descripción

WebView en macOS carga una página pero no puede navegar dentro de la página. Creo que pasa cuando carga un SPA, siempre va a casa.
Además, la primera vista web no carga la página, siempre la segunda vez.

Funcionó bien en 3.0 pero el problema ocurre en 3.1 y superior.

Pasos para reproducir

  1. Agregue un WebView en un nuevo ContentPage
  2. Ponga Source propiedad con valor https://santafepubliclibrary.odilo.us/opac/
  3. Navegar a una nueva página a través de Navigation.PushAsync

Comportamiento esperado

La página se carga por primera vez y puede navegar dentro de la página, como lo hace en XF 3.0

Comportamiento real

La página se carga por segunda vez y no se puede navegar dentro de la página.

Información básica

  • Versión con problema: Xamarin.Forms 3.3.0.967583
  • Última versión buena conocida: Xamarin.Forms 3.0.0.561731
  • IDE: Visual Studio para Mac 7.6.11 (compilación 9)
  • Marcos de destino de la plataforma:

    • macOS: 10.13.6

Capturas de pantalla

webview_spa

Enlace de reproducción

https://github.com/joseluisct/WebViewIssues

webview 2 good first issue help wanted inactive macOS up-for-grabs

Todos 3 comentarios

La reproducción (que funciona para el otro problema que se informó) en realidad falla cuando se intenta navegar hacia atrás en 3.3 con un NRE. ¿Hubo algún cambio que pudiera causar esto?

(Cerrado por accidente)

Probé nuevamente en 3.3 (último estable) y encontré el NRE, sucede cuando navega a la página con WebView y hace clic en el botón Atrás rápidamente. Ambos problemas usan el mismo WebView y no se hace nada cuando regresa.

Creo que la NRE está relacionada con este otro problema: # 4001 que se ha hecho en 3.4 # 4188
Seguimiento de pila de NRE (igual que el problema al que se hace referencia):
Object reference not set to an instance of an object at Xamarin.Forms.Platform.MacOS.WebViewRenderer+FormsWebFrameDelegate.FinishedLoad (WebKit.WebView sender, WebKit.WebFrame forFrame) [0x00017] in <1d80e21b8be74ba38bdf2bd5d3e4d5a0>:0 at (wrapper managed-to-native) AppKit.NSApplication.NSApplicationMain(int,string[]) at AppKit.NSApplication.Main (System.String[] args) [0x00040] in /Library/Frameworks/Xamarin.Mac.framework/Versions/5.0.0.0/src/Xamarin.Mac/AppKit/NSApplication.cs:100 at WebViewIssues.macOS.MainClass.Main (System.String[] args) [0x00017] in /Volumes/VMware Shared Folders/Compartido/WebViewIssues/WebViewIssues/WebViewIssues.macOS/Main.cs:11

Pero descubrí que si espero un poco más y vuelvo, no ocurre NRE y ocurre el problema como en la descripción (botón superior / derecho en la reproducción)
En 3.0 todo está bien. (también está bien en UWP)

Estoy tratando de usar WebView en una aplicación Xamarin.Mac y también tengo este problema, no puedo navegar entre páginas,
en Xamarin.Forms 3.0 parece estar bien la navegación, pero el evento de navegación nunca se activa, en Xamarin.Forms 3.1 se activa el evento de navegación, pero no se puede navegar entre páginas.

¿Fue útil esta página
0 / 5 - 0 calificaciones