Xamarin - Android.Webkit 无法访问

Xamarin - Android.Webkit can't be accessed

我们正在尝试为 WebView 创建自定义呈现器。唯一的问题是 Xamarin 找不到 Android.Webkit.WebView.

using [AppName];
using [AppName].Droid;
using Xamarin.Forms;
using Xamarin.Forms.Platform.Android;
using Mono;
using Android.Webkit;

[assembly: ExportRenderer(typeof(HybridWebView),         typeof(HybridWebViewRenderer))]
namespace [AppName].Droid
{
public class HybridWebViewRenderer : ViewRenderer<HybridWebView,     Android.Webkit.WebView>
{
    const string JavaScriptFunction = "function invokeCSharpAction(data){jsBridge.invokeAction(data);}";

    protected override void OnElementChanged(ElementChangedEventArgs<HybridWebView> e)
    {
        base.OnElementChanged(e);

        if (Control == null)
        {
            var webView = new Android.Webkit.WebView(Forms.Context);
            webView.Settings.JavaScriptEnabled = true;
            SetNativeControl(webView);
        }
        if (e.OldElement != null)
        {
            Control.RemoveJavascriptInterface("jsBridge");
            var hybridWebView = e.OldElement as HybridWebView;


        }
        if (e.NewElement != null)
        {
            Control.LoadUrl(string.Format("file:///android_asset/Content/{0}", Element.Source));
            InjectJS(JavaScriptFunction);
        }
    }

    void InjectJS(string script)
    {
        if (Control != null)
        {
            Control.LoadUrl(string.Format("javascript: {0}", script));
        }
    }
}

我们有 'using Android.Webkit',但遇到错误“类型或名称空间名称 'Webkit' 在名称空间 `[AppName].Android 中不存在”。您是否缺少程序集参考?'

它似乎在我们的应用命名空间内寻找它,这似乎就是问题所在。但我们不知道如何解决它。

如有任何帮助,我们将不胜感激。

听起来它与您项目中的另一个 Android 命名空间混淆了。尝试使用全局命名空间

global::Android.Webkit.WebView

你也可以定义一个别名

using web = global::Android.Webkit.WebView;