Android의 WebView 혼합 콘텐츠
이 Android 플랫폼별은 API 21 이상을 대상으로 하는 애플리케이션에서 혼합 콘텐츠를 표시할 수 있는지 여부를 WebView
제어합니다. 혼합 콘텐츠는 처음에 HTTPS 연결을 통해 로드되지만 HTTP 연결을 통해 리소스(예: 이미지, 오디오, 비디오, 스타일시트, 스크립트)를 로드하는 콘텐츠입니다. 연결된 속성을 열거형 값으로 설정 WebView.MixedContentMode
하여 XAML에서 MixedContentHandling
사용합니다.
<ContentPage ...
xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core">
<WebView ... android:WebView.MixedContentMode="AlwaysAllow" />
</ContentPage>
또는 흐름 API를 사용하여 C#에서 사용할 수 있습니다.
using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
...
webView.On<Android>().SetMixedContentMode(MixedContentHandling.AlwaysAllow);
이 메서드는 WebView.On<Android>
이 플랫폼별이 Android에서만 실행되도록 지정합니다. WebView.SetMixedContentMode
네임스페이스의 Xamarin.Forms.PlatformConfiguration.AndroidSpecific
메서드는 다음 세 가지 가능한 값을 제공하는 열거형을 MixedContentHandling
사용하여 혼합 콘텐츠를 표시할 수 있는지 여부를 제어하는 데 사용됩니다.
AlwaysAllow
– HTTPS 원본이 HTTP 원본에서 콘텐츠를 로드할 수 있음을 나타냅니다WebView
.NeverAllow
– HTTPS 원본이WebView
HTTP 원본에서 콘텐츠를 로드하는 것을 허용하지 않음을 나타냅니다.CompatibilityMode
– 최신 디바이스 웹 브라우저의 접근 방식과 호환되도록 시도했음을 나타냅니다WebView
. 일부 HTTP 콘텐츠는 HTTPS 원본에서 로드할 수 있으며 다른 형식의 콘텐츠는 차단됩니다. 차단되거나 허용되는 콘텐츠 형식은 각 운영 체제 릴리스에서 변경될 수 있습니다.
그 결과 지정된 MixedContentHandling
값이 혼합 콘텐츠를 표시할 WebView
수 있는지 여부를 제어하는 값이 적용됩니다.