public override WebResourceResponse ShouldInterceptRequest(WebView p0, string url) { if (url.Contains("/static/")) { var filePath = url.Substring(url.LastIndexOf("/static/"), (url.Length - url.LastIndexOf("/static/"))); var extensionName = filePath.Substring(filePath.LastIndexOf(".") + 1, (filePath.Length - filePath.LastIndexOf(".") - 1)); if (!File.Exists(DeviceInfo.HtmlFolder + filePath)) { Task.Run(() => { new HtmlFileManage().DownloadFile(HybridCommon.Config.HtmlServerHost + filePath, DeviceInfo.HtmlFolder + filePath); }); } else { var fileStream = File.OpenRead(DeviceInfo.HtmlFolder + filePath); var result = new WebResourceResponse(); result.Encoding = "UTF-8"; result.MimeType = MimeHelper.GetMime(extensionName); result.Data = fileStream; return(result); } } else if (url.Contains("/index.html#/Empty/")) { var filePath = "/index.html"; if (!File.Exists(DeviceInfo.HtmlFolder + filePath)) { Task.Run(() => { new HtmlFileManage().DownloadFile(HybridCommon.Config.HtmlServerHost + filePath, DeviceInfo.HtmlFolder + filePath); }); } else { var fileStream = File.OpenRead(DeviceInfo.HtmlFolder + filePath); var result = new WebResourceResponse(); result.Encoding = "UTF-8"; result.MimeType = MimeHelper.GetMime("html"); result.Data = fileStream; return(result); } } //if (url.Contains(DeviceInfo.HtmlFolder)) //{ // url = url.Replace(DeviceInfo.HtmlFolder, "@"); // url = url.Substring(url.IndexOf("@")+1, url.Length - url.IndexOf("@")-1); // url = HybridCommon.Config.HtmlServerHost + url; //} return(base.ShouldInterceptRequest(p0, url)); }
public override void OnReceivedHttpError(WebView p0, IWebResourceRequest p1, WebResourceResponse p2) { base.OnReceivedHttpError(p0, p1, p2); }
public override void OnReceivedError(WebView p0, int p1, string p2, string p3) { base.OnReceivedError(p0, p1, p2, p3); }
public override void OnPageStarted(WebView p0, string p1, Bitmap p2) { base.OnPageStarted(p0, p1, p2); }
public override bool ShouldOverrideUrlLoading(WebView view, string url) { return(AnalyticAgreement.HandleAgreement(url)); }
public override WebResourceResponse ShouldInterceptRequest(WebView p0, IWebResourceRequest request) { return(ShouldInterceptRequest(p0, request.Url.ToString())); }
public override void OnPageFinished(WebView view, string url) { }
//对应js 的通知弹框 ,可以用来实现js 和 android之间的通信 public override void OnReceivedTitle(WebView p0, string p1) { base.OnReceivedTitle(p0, p1); }
public override bool OnJsAlert(WebView p0, string p1, string p2, IJsResult p3) { //这里写入你自定义的window alert return(base.OnJsAlert(p0, p1, p2, p3)); }
public override bool OnShowFileChooser(WebView arg0, IValueCallback arg1, FileChooserParams arg2) { Console.WriteLine("onShowFileChooser"); return(base.OnShowFileChooser(arg0, arg1, arg2)); }
public override bool OnJsConfirm(WebView p0, string p1, string p2, IJsResult p3) { return(base.OnJsConfirm(p0, p1, p2, p3)); }