Freigeben über


Gemischte WebView-Inhalte unter Android

Diese plattformspezifische Android-Plattform steuert, ob gemischte WebView Inhalte in Anwendungen angezeigt werden können, die auf API 21 oder höher abzielen. Gemischte Inhalte sind Inhalte, die zunächst über eine https-Verbindung geladen werden, die aber Ressourcen (wie Bilder, Audio, Video, Stylesheets, Skripte) über eine http-Verbindung laden. Sie wird in XAML verwendet, indem die WebView.MixedContentMode angefügte Eigenschaft einem Wert der MixedContentHandling-Aufzählung zugewiesen wird:

<ContentPage ...
             xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core">
    <WebView ... android:WebView.MixedContentMode="AlwaysAllow" />
</ContentPage>

Alternativ kann sie mit der Fluent-API von C# genutzt werden:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.AndroidSpecific;
...

webView.On<Android>().SetMixedContentMode(MixedContentHandling.AlwaysAllow);

Die WebView.On<Android> Methode gibt an, dass diese plattformspezifisch nur auf Android läuft. Die WebView.SetMixedContentMode-Methode wird im Xamarin.Forms.PlatformConfiguration.AndroidSpecific-Namensbereich verwendet, um zu steuern, ob gemischte Inhalte angezeigt werden können, wobei die MixedContentHandling-Aufzählung drei mögliche Werte liefert:

  • AlwaysAllow – gibt an, dass die WebView zulässt, dass ein https-Ursprung Inhalte aus einem http-Ursprung laden kann.
  • NeverAllow – gibt an, dass die WebView nicht zulässt, dass ein https-Ursprung Inhalte aus einem http-Ursprung laden kann.
  • CompatibilityMode – gibt an, dass WebView versuchen wird, mit dem Ansatz des neuesten Geräte-Webbrowsers kompatibel zu sein. Einige http-Inhalte können von einem https-Ursprung geladen werden, während andere Arten von Inhalten blockiert werden. Die Arten von Inhalten, die blockiert oder zulässig sind, können sich bei jeder Betriebssystem-Version ändern.

Daraus ergibt sich, dass ein angegebener MixedContentHandling-Wert angewendet wird auf WebView, der steuert, ob gemischte Inhalte angezeigt werden können:

Plattformspezifische WebView mixed content handling platform-specific