Esempio n. 1
0
            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));
            }
Esempio n. 2
0
 public override void OnReceivedHttpError(WebView p0, IWebResourceRequest p1, WebResourceResponse p2)
 {
     base.OnReceivedHttpError(p0, p1, p2);
 }
Esempio n. 3
0
 public override void OnReceivedError(WebView p0, int p1, string p2, string p3)
 {
     base.OnReceivedError(p0, p1, p2, p3);
 }
Esempio n. 4
0
 public override void OnPageStarted(WebView p0, string p1, Bitmap p2)
 {
     base.OnPageStarted(p0, p1, p2);
 }
Esempio n. 5
0
 public override bool ShouldOverrideUrlLoading(WebView view, string url)
 {
     return(AnalyticAgreement.HandleAgreement(url));
 }
Esempio n. 6
0
 public override WebResourceResponse ShouldInterceptRequest(WebView p0, IWebResourceRequest request)
 {
     return(ShouldInterceptRequest(p0, request.Url.ToString()));
 }
Esempio n. 7
0
 public override void OnPageFinished(WebView view, string url)
 {
 }
Esempio n. 8
0
 //对应js 的通知弹框 ,可以用来实现js 和 android之间的通信
 public override void OnReceivedTitle(WebView p0, string p1)
 {
     base.OnReceivedTitle(p0, p1);
 }
Esempio n. 9
0
 public override bool OnJsAlert(WebView p0, string p1, string p2, IJsResult p3)
 {
     //这里写入你自定义的window alert
     return(base.OnJsAlert(p0, p1, p2, p3));
 }
Esempio n. 10
0
 public override bool OnShowFileChooser(WebView arg0, IValueCallback arg1, FileChooserParams arg2)
 {
     Console.WriteLine("onShowFileChooser");
     return(base.OnShowFileChooser(arg0, arg1, arg2));
 }
Esempio n. 11
0
 public override bool OnJsConfirm(WebView p0, string p1, string p2, IJsResult p3)
 {
     return(base.OnJsConfirm(p0, p1, p2, p3));
 }