### 目前现状 - windows和uos目前浏览器技术方案是不一样的,所以对于插件而言,实际也是不同的实现。 - windows是通过cefclient直接修改header,所以所有流量都有header数据。 - uos使用的标准chrome extension - 所以两个平台是不统一,实现是割裂的。 ### 根本原因 - 当前生产上的windows存在大量的windows8 32位系统 - win8系统最新能够支持最新的cef版本为-日期:**Sep 2020** |版本:**4240** |具体信息:**86 86 Win 7+, VS2017 15.7.1+, Win 10.0.19041 SDK, Ninja** - 终端当前使用的版本为81.0.**4044** - 而该版本不适配chrome extension的方式 - 后续cef版本是支持chrome extension的,但是由于操作系统限制,无法直接替换。 ### 其他影响因素 - C++弹窗解决。 - 调试发现,最终为联软载入程序引发的错误 - 也尝试过无任何改动的cefclient和高版本的cefclient,一样会有这个弹框 - 弹框时间不固定。 - 猜测为hook的时间不一致。 - 非程序内错误,不影响页面的加载和使用。。也不会造成程序崩溃。。就是弹框影响美观和使用。 - 搜狗输入法适配 ### 想要解决的问题 - 需要确定插件部分后续的发展方向 - 想要解决当前cef使用上的其他问题 ### 解决方案对比 | 解决方案 | 双系统不同实现方案 | windows更换为360 | 只支持UOS | | :------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------ | | 方案简述 | 1、windows采用原生win的gui来模拟插件窗口实现。
如,确认/取消弹窗,状态栏展示等。
2、UOS继续使用插件来实现。 | win和uos都使用chrome extension插件 | 因目前只采购uos机器,后续windows不支持其他的插件的功能 | | 优点 | 与目前双系统方案一致 | (1)只需开发一次插件,减少工作量,插件运行行为保持一致性。
(2)能够解决C++弹框问题 | (1)只开发UOS插件
(2)Windows部分与目前保持一致 | | 缺点 | (1)就插件这一部分,需要不同的实现方案。
(2)就浏览器运行参数和行为,会有不统一,需要两边都重新适配,增加开发量
(3)无法解决C++弹窗问题(可能得通过别的方式解决) | (1)当前webRTC部分向UOS靠拢,也会有UOS部分chrome权限的问题。
不过随UOS部分的解决也一样会解决windows问题。
(2)需验证搜狗输入法在360上的效果。 | (1)Windows无法使用其他插件。 | | | | | |