Smíšený obsah WebView v Androidu
Toto uživatelské rozhraní pro víceplatformní aplikace .NET (.NET MAUI) pro Android řídí, jestli WebView může zobrazit smíšený obsah. Smíšený obsah je obsah, který se původně načítá přes připojení HTTPS, ale načítá prostředky (například obrázky, zvuk, video, šablony stylů, skripty) přes připojení HTTP. Využívá se v XAML nastavením WebView.MixedContentMode
připojené vlastnosti na hodnotu výčtu MixedContentHandling
:
<ContentPage ...
xmlns:android="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific;assembly=Microsoft.Maui.Controls">
<WebView ... android:WebView.MixedContentMode="AlwaysAllow" />
</ContentPage>
Alternativně ho můžete využívat z jazyka C# pomocí rozhraní FLUENT API:
using Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific;
...
webView.On<Microsoft.Maui.Controls.PlatformConfiguration.Android>().SetMixedContentMode(MixedContentHandling.AlwaysAllow);
Metoda WebView.On<Microsoft.Maui.Controls.PlatformConfiguration.Android>
určuje, že tato konkrétní platforma se bude spouštět pouze v Androidu. Metoda WebView.SetMixedContentMode
v Microsoft.Maui.Controls.PlatformConfiguration.AndroidSpecific
oboru názvů slouží k řízení, zda se dá zobrazit smíšený obsah, a výčet MixedContentHandling
poskytuje tři možné hodnoty:
AlwaysAllow
– označuje, že WebView umožní zdroji HTTPS načíst obsah z původu HTTP.NeverAllow
– označuje, že WebView nepovolí zdroj HTTPS načíst obsah z původu HTTP.CompatibilityMode
– označuje, že WebView se pokusí být kompatibilní s přístupem nejnovějšího webového prohlížeče zařízení. Některé obsahy HTTP mohou být načteny původem HTTPS a jiné typy obsahu budou blokovány. Typy obsahu, které jsou blokované nebo povolené, se můžou u každé verze operačního systému změnit.
Výsledkem je, že se na zadanou MixedContentHandling
hodnotu použije WebView, která určuje, jestli se dá zobrazit smíšený obsah: