【问题标题】:Why Xamarin.Forms WebView increases Android app storage data size?为什么 Xamarin.Forms WebView 会增加 Android 应用存储数据大小?
【发布时间】:2016-03-21 11:11:13
【问题描述】:

我有一个 Xamarin.Forms 应用程序,其功能使用 WebView。它会打开一个简单的网页。

每次我在其中打开网页时,应用程序的存储数据大小都会增加。我在 Android/设置/应用程序信息/存储上检查它。我的应用程序大小约为 15 MB,但打开一些页面后,它会变为 50 MB,依此类推。它在做什么?缓存?要么...?如何禁用它?

【问题讨论】:

    标签: android webview xamarin xamarin.forms


    【解决方案1】:

    我假设它是WebView 的缓存。不幸的是,Forms WebView 的缓存是不可配置的。所以你必须编写一个自定义渲染器并在本机视图上禁用它。将此类添加到您的 Android 项目中。

    [assembly: ExportRenderer(typeof(WebView), typeof(NoChacheWebViewRenderer))]
    namespace MyApp.Droid.Renderer
    {
    
        public class NoChacheWebViewRenderer : WebViewRenderer
        {
            protected override void OnElementChanged(VisualElementChangedEventArgs e)
            {
                base.OnElementChanged(e);
                if (Control == null) return;
    
                Control.ClearCache(true);
                Control.Settings.SetAppCacheEnabled(false);
                Control.Settings.CacheMode = CacheModes.NoCache;
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2021-11-24
      • 2019-06-24
      • 2019-05-02
      • 1970-01-01
      • 2021-07-03
      • 2021-01-21
      • 2015-07-17
      • 2011-06-13
      • 1970-01-01
      相关资源
      最近更新 更多