WebView Mixed Content für Android
Diese Android-plattformspezifische Steuerung steuert, ob gemischte WebView
Inhalte in Anwendungen mit API 21 oder höher angezeigt werden können. Gemischter Inhalt ist Inhalt, der zunächst über eine HTTPS-Verbindung geladen wird, aber Ressourcen (z. B. Bilder, Audio, Video, Stylesheets, Skripts) über eine HTTP-Verbindung lädt. Es wird in XAML verwendet, indem die WebView.MixedContentMode
angefügte Eigenschaft auf einen Wert der MixedContentHandling
Enumeration festgelegt wird:
<ContentPage ...
xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core">
<WebView ... android:WebView.MixedContentMode="AlwaysAllow" />
</ContentPage>
Alternativ kann sie über C# mit der Fluent-API 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 plattformspezifische Version nur unter Android ausgeführt wird. Die WebView.SetMixedContentMode
-Methode im Xamarin.Forms.PlatformConfiguration.AndroidSpecific
Namespace wird verwendet, um zu steuern, ob gemischte Inhalte angezeigt werden können, wobei die MixedContentHandling
Enumeration drei mögliche Werte bereitstellt:
AlwaysAllow
– gibt an, dass einWebView
HTTPS-Ursprung Inhalte aus einem HTTP-Ursprung lädt.NeverAllow
– gibt an, dass esWebView
einem HTTPS-Ursprung nicht zulässt, Inhalte aus einem HTTP-Ursprung zu laden.CompatibilityMode
– gibt an, dass versuchtWebView
wird, mit dem Ansatz des neuesten Gerätewebbrowsers kompatibel zu sein. Einige HTTP-Inhalte dürfen möglicherweise von einem HTTPS-Ursprung geladen werden, und andere Arten von Inhalten werden blockiert. Die Arten von Inhalten, die blockiert oder zulässig sind, können sich mit jedem Betriebssystemrelease ändern.
Das Ergebnis ist, dass ein angegebener MixedContentHandling
Wert auf den angewendet wird, der WebView
steuert, ob gemischte Inhalte angezeigt werden können: