다음을 통해 공유


Android의 WebView 혼합 콘텐츠

이 .NET 다중 플랫폼 앱 UI(.NET MAUI) Android 플랫폼별 컨트롤은 혼합 콘텐츠를 표시할 수 있는지 여부를 WebView 제어합니다. 혼합 콘텐츠는 처음에 HTTPS 연결을 통해 로드되지만 HTTP 연결을 통해 리소스(예: 이미지, 오디오, 비디오, 스타일시트, 스크립트)를 로드하는 콘텐츠입니다. 연결된 속성을 열거형 값으로 설정 WebView.MixedContentMode 하여 XAML에서 MixedContentHandling 사용합니다.

<ContentPage ...
             xmlns:android="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific;assembly=Microsoft.Maui.Controls">
    <WebView ... android:WebView.MixedContentMode="AlwaysAllow" />
</ContentPage>

또는 흐름 API를 사용하여 C#에서 사용할 수 있습니다.

using Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific;
...

webView.On<Microsoft.Maui.Controls.PlatformConfiguration.Android>().SetMixedContentMode(MixedContentHandling.AlwaysAllow);

이 메서드는 WebView.On<Microsoft.Maui.Controls.PlatformConfiguration.Android> 이 플랫폼별이 Android에서만 실행되도록 지정합니다. WebView.SetMixedContentMode 네임스페이스의 Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific 메서드는 다음 세 가지 가능한 값을 제공하는 열거형을 MixedContentHandling 사용하여 혼합 콘텐츠를 표시할 수 있는지 여부를 제어하는 데 사용됩니다.

  • AlwaysAllow – HTTPS 원본이 HTTP 원본에서 콘텐츠를 로드할 수 있음을 나타냅니다 WebView .
  • NeverAllow – HTTPS 원본이 WebView HTTP 원본에서 콘텐츠를 로드하는 것을 허용하지 않음을 나타냅니다.
  • CompatibilityMode – 최신 디바이스 웹 브라우저의 접근 방식과 호환되도록 시도했음을 나타냅니다 WebView . 일부 HTTP 콘텐츠는 HTTPS 원본에서 로드할 수 있으며 다른 형식의 콘텐츠는 차단됩니다. 차단되거나 허용되는 콘텐츠 형식은 각 운영 체제 릴리스에서 변경될 수 있습니다.

그 결과 지정된 MixedContentHandling 값이 혼합 콘텐츠를 표시할 WebView수 있는지 여부를 제어하는 값이 적용됩니다.

WebView mixed content handling platform-specific.