생성자가 구체적 형식 대신 기본 인터페이스 허용

이제 다음 형식의 생성자는 인터페이스(WebViewHandler)를 구현하는 특정 구체적 형식 대신, 기본 인터페이스(IWebViewHandler)를 허용합니다.

  • Microsoft.Maui.Platform.MauiWebChromeClient
  • Microsoft.Maui.Platform.MauiWebViewNavigationDelegate

도입된 버전

.NET 7

이전 동작

MauiWebChromeClientMauiWebViewNavigationDelegate의 생성자에서는 호출자가 구체적 Microsoft.Maui.Handlers.WebViewHandler 인스턴스를 전달해야 했습니다.

새 동작

이제 MauiWebChromeClientMauiWebViewNavigationDelegate의 생성자는 인터페이스 Microsoft.Maui.Handlers.IWebViewHandler의 모든 구현을 허용합니다.

호환성이 손상되는 변경의 형식

이 변경은 이진 호환성에 영향을 줄 수 있습니다.

변경 이유

원래 생성자에서는 사용자가 제어할 수 없으며 라이브러리 작성자 또는 가져오기 순서에 따라 언제든지 throw할 수 있는 구체적 형식을 호출자가 전달해야 했습니다. 새 구현에는 개발자가 실제로 사용할 수 있는 기본 인터페이스만 필요합니다.

  • iOS 또는 Mac Catalyst WebViewHandler, 다중 대상 net6.0-iosnet7.0-ios 또는 net6.0-maccatalystnet7.0-maccatalyst에 대해 WKUIDelegate 매퍼를 재정의한 경우
  • Android WebViewHandler, 다중 대상 net6.0-androidnet7.0-android에 대한 WebChromeClient 매퍼를 재정의한 경우
  • 그렇지 않으면 아무 작업도 필요하지 않습니다.

영향을 받는 API

  • Microsoft.Maui.Platform.MauiWebChromeClient 생성자
  • Microsoft.Maui.Platform.MauiWebViewNavigationDelegate 생성자