title: Xamarin forms Hybridweb view mailto link not working
body: <p>Hi I have implemented a hybrid webview in my xamarin forms pcl project. I have a html page in which I have created a mailto link but it is not working on clicking it, it shows no webpage found.</p>
  
  <p>In uwp, it asks for opening app.</p>
  
  <p>Hybridwebview</p>
  
  <pre><code>public class HybridWebView : View
      {
          Action&lt;string&gt; action;
  
          public static readonly BindableProperty UriProperty = BindableProperty.Create(
              propertyName: "Uri",
              returnType: typeof(string),
              declaringType: typeof(HybridWebView),
              defaultValue: default(string));
  
          public string Uri
          {
              get { return (string)GetValue(UriProperty); }
              set { SetValue(UriProperty, value); }
          }
  
          public void RegisterAction(Action&lt;string&gt; callback)
          {
              action = callback;
          }
  
          public void Cleanup()
          {
              action = null;
          }
  
          public void InvokeAction(string data)
          {
              if (action == null || data == null)
              {
                  return;
              }
              action.Invoke(data);
          }
      }
  </code></pre>
  
  <p>Renderer in Droid-</p>
  
  <pre><code>public class HybridWebViewRenderer : ViewRenderer&lt;HybridWebView, Android.Webkit.WebView&gt;
      {
         const string JavaScriptFunction = "function invokeCSharpAction(data){jsBridge.invokeAction(data);}";
         const string downloadFunction = "function downloadbook(data){jsBridge.invokeDownloadAction(data);}";
  
          protected override void OnElementChanged(ElementChangedEventArgs&lt;HybridWebView&gt; e)
          {
              base.OnElementChanged(e);
              Android.Webkit.WebView.SetWebContentsDebuggingEnabled(true);
  
              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;              
                  hybridWebView.Cleanup();
              }
              if (e.NewElement != null)
              {
                  Control.AddJavascriptInterface(new JSBridge(this), "jsBridge");
                  Control.LoadUrl(string.Format("file:///android_asset/Content/{0}", Element.Uri));
                  //string url = System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal), Element.Uri);
                  //Control.LoadUrl(string.Format("file://{0}", url));
  
                  Task.Run(() =&gt; {
                      Task.WaitAny(Task.Delay(2000));
                      InjectJS(JavaScriptFunction);
                      CallJS();
                  });
  
              }
          }
  
          void InjectJS(string script)
          {
              if (Control != null)
              {                  
                  Control.LoadUrl(string.Format("Javascript: {0}", script));
              }
          }
  
          void CallJS()
          {
              if (Control != null)
              {
                  try
                  {
  
                  }
                  catch (Exception ex)
                  { }
  
              }
          }
  
      }
  </code></pre>