当前位置: 首页 > news >正文

网站静态首页模板个人个体工商户查询

网站静态首页模板,个人个体工商户查询,很久以前做相册mv的网站,网站地图的形式官方地址#xff1a; https://github.com/Tencent/vConsole/blob/dev/doc/tutorial_CN.md 上面文档中提供了两种常见的引入H5工程思路#xff0c;简单易懂#xff01; 今天这篇文章要说明的是#xff0c;不同于官方文档的接入方式。 先说背景#xff1a;H5工程方…官方地址 https://github.com/Tencent/vConsole/blob/dev/doc/tutorial_CN.md 上面文档中提供了两种常见的引入H5工程思路简单易懂 今天这篇文章要说明的是不同于官方文档的接入方式。 先说背景H5工程方因框架原因不愿意或者不方便引入这样就导致问题定位模糊容易产生相互推诿的情况那么作为app 客户端的我们又该如何应对呢 思路了解官方文档明白本质就是引入一段js代码。那么为何不通过webView 直接注入。 不考虑兼容性的情况下4.4以下通过webVIew.evaluateJavascript的方法就可实现注入js。 实践1网络cdn 引用 注入。 代码如下 String injectScript “(function() {” “function loadVConsole() {” if (!window.vConsoleLoaded) { var script document.createElement(‘script’); script.type ‘text/javascript’; script.src ‘https://unpkg.com/vconsole/dist/vconsole.min.js’; script.onload function() { window.vConsoleLoaded true; if (window.vConsoleLoaded window.vConsoleInstance null) { window.vConsoleInstance new VConsole(); } }; document.head.appendChild(script); } “}” “loadVConsole();” // 调用函数来加载VConsole “})();”; binding.dwebVIew.evaluateJavascript(injectScript, null); 至此vConsole 就可以使用了。 然后又突发奇想如果放到本地会不会更快 所以出现了 实践2本地assets 文件中的js引用 注入。 try { if(TextUtils.isEmpty(vConsoleScript)) { // 读取assets文件夹中的vconsole.min.js文件 InputStream inputStream getAssets().open(“jsbrg/vconsole.min.js”); int size inputStream.available(); byte[] buffer new byte[size]; inputStream.read(buffer); inputStream.close(); vConsoleScript new String(buffer, “UTF-8”); } // 构造注入到WebView中的JavaScript代码 if(TextUtils.isEmpty(injectScript)) { injectScript “(function() {” “function loadVConsole() {” if (!window.vConsoleLoaded) { var script document.createElement(‘script’); script.type ‘text/javascript’; script.textContent ‘ escapeJavaScriptString(vConsoleScript) ’; document.head.appendChild(script); window.vConsoleLoaded true; if (window.vConsoleLoaded !window.vConsoleInstance) { window.vConsoleInstance new VConsole(); } } “}” “loadVConsole();” “})();”; } // 注入JavaScript代码到WebView中 binding.dwebVIew.evaluateJavascript(injectScript, null); } catch (IOException e) { e.printStackTrace(); } 其中遇到两个坑 1、从assets文件夹中读取注意路径一定得有否则会io异常 2、上述方法有个关键方法字符转义方法加载的字符串无法直接注入所以没这个方法无法注入成功如下 public static String escapeJavaScriptString(String input) { if (input null || input.isEmpty()) { return “”; } StringBuilder sb new StringBuilder(input.length()); for (int i 0; i input.length(); i) { char c input.charAt(i); switch © { case ‘\’: sb.append(“\\”); break; case ‘’‘: sb.append(\’“); break; case ”: sb.append(“\”“); break; case ’ : sb.append(”\r); break; case ’ : sb.append( “); break; case ’ : sb.append(”\f); break; case ‘’: sb.append(“\b”); break; case ’ : sb.append(“\t”); break; // 对于其他需要转义的字符如 , , , 也可以在这里添加 // 但通常这些字符在 JavaScript 字符串中不需要转义除非它们被嵌入到 HTML 中 default: // 对于 ASCII 范围内的字符通常不需要转义 // 但对于非打印字符或特殊 Unicode 字符你可能需要添加额外的逻辑 if ((c 0x20 c 0x7E) || Character.isISOControl©) { sb.append©; } else { sb.append©; } } } return sb.toString(); } 以上就是两种不同官方添加vConsole的方法本质都是通过安卓 webView的动态注入js方法。 实践2确实更快一些个人感觉免去了网络延时多了本地处理时间大家可以对比一下 看到最后恭喜你获得踩坑经历大礼包 注入的时机选择 1、onPageFinished 2、onPageStarted 3、onProgressChanged 经过我的实践我这边认为最好的注入时机这个三个地方都加上onProgressChanged 方法中进度超过35%时开始注入。由于在注入代码中有添加是否注入过的逻辑所以不用担心重复注入。 onPageStarted 这里添加是为了能尽可能的快注入成功可能尽可能多的获取日志。 onPageFinished 这里添加是前两处注入都失败了有个保底方案。 看到这里缺点也非常明显日志是否能打印全取决于注入成功的时间。所以会损失部分初始日志但我测试也是偶发情况。 到此分享结束我也是迫于无奈才出此下策有更好的办法欢迎分享。最后的最后希望大家不会用到这种方法尽量让前端同学自己添加
http://www.dnsts.com.cn/news/200895.html

相关文章:

  • 专业微信网站建设四会建设局网站
  • 小说阅读网站开发百度推广关键词排名规则
  • vs做的本地网站触屏网页界面设计
  • 做文字logo的网站wordpress页面id
  • 网页设计与网站建设有区别吗湛江专业建站联系方式
  • 专门做团购的网站有哪些如何建设一个简易网站
  • 网站免费发布与推广企业介绍网页制作
  • 科技 公司 响应式 网站搜索引擎营销成功的案例
  • 杭州网站艰涩建设网站用什么软件
  • 企业网站建设需要费用手机app设计网站建设
  • 个人网站 虚拟主机价格amp 插件 wordpress
  • 软件介绍网站模板弹窗广告最多的网站
  • 宜昌网站建设宜昌做头像的网站
  • 做家装的网站有什么四会城乡建设局网站
  • 简约好看的网站模板直通车怎么开才有效果
  • 销售平台网站建设方案wordpress文章有模板下载
  • 网站开发 总结报告郴州seo公司
  • 网站建设后台是怎么制作的济南网站建设小程序
  • 网站的投资和建设项目域名备案要先做网站的吗
  • 网站设计电脑培训学校哈尔滨城市规划建设网
  • 07年做网站建设部 招投标网站
  • 律师事务所网站建设1688货源网一件代发拼多多
  • 政工网站建设方案可拖拽式网站建设
  • 上海建材网站建设工业企业展厅设计公司
  • 国外免费网站贸易平台前十名俄罗斯搜索引擎yandex推广入口
  • 河南网站备案代理企业规划设计
  • 网易云播放器做网站播放做网站和app哪类商标
  • 个人网站域名快速备案流程广西网站建设运营费用
  • 网站上的文章用秀米可以做吗手机网站添加微信方式
  • 济宁网站建设找哪家租车网站模板