SAO Utils 插件 – 网页浏览器引擎

网页浏览器引擎
当前版本 v1.1.3 更新日期 2016.03.30 下载插件
NERvGear SAO Utils Beta 1 Update 1 以上
系统要求 32/64位 Windows(XP SP2 以上, Vista, 7, 8, 8.1, 10)

[ 网页浏览器引擎 ]插件为 SAO Utils 提供基本网页浏览功能以及 HTML/JavaScript 开发接口支持. 除了与现代浏览器一样, 提供网页浏览, 视频, 图片观看功能外, 还将部分 NERvSDK 标准接口转换到 HTTP 标准接口, 为网页开发者提供自制[ 桌面网页挂件 ]的可能性.

使用说明

安装并启用插件后, [ 网页浏览器引擎 ]将接管 SAO Utils 大部分的打开网页操作, 包括主菜单中所有项目行为是’URL’的操作, [ Bangumi ]的播放按钮, [ Mail Box ]的”打开 HTML”等. 当打开接管的网页时, 会弹出一个 SAO 外观的浏览器标签窗口.

在主菜单中任意项目中, 设定为’URL’行为后, 就可以使用 SAO Utils 内置的浏览器打开任意链接了.

使用 ‘file:///’ 协议作为 URL 的话, 还能打开本地硬盘上的 HTML 或 HTM 文件.

浏览器窗口操作暂时十分简单: 左上角的图标是关闭按钮; 拖动右上角, 左下角和右下角可以更改浏览器大小; 右下方的放大镜图标可以跳转到任意链接.

除了 2D 模式下的基本操作外, 3D 模式还允许独立缩放单个浏览器窗口. 在浏览器窗口上, 按住鼠标右键(对应平板等触摸设备的长按), 然后上(放大)下(缩小)拖动鼠标即可完成缩放操作.

高级选项

本插件基于 CEF 库开发, 简单来说就是跟大名鼎鼎的 Chrome, 什么易云音乐 , 什么数字, 什么豹等浏览器一样是基于 Chromium 进行开发的, 因此同样支持 Chrome 的命令行启动选项.

通过 “呼出启动器-设置-Option-插件-网页浏览器引擎” 或 “右键任务栏图标-首选项-插件-网页浏览器引擎-配置” 操作即可弹出命令设置对话框(需要重新启动 SAO Utils 设置才会生效).
*渲染帧数默认限制为 30 FPS, 如果你的 SAO Utils 正在使用’兼容’ 3D/2D 模式, 或机器性能足够好的话, 可以在命令行开关中添加选项解除限制:

--max-frame-rate=0

更多 Chromium 命令行开关请参考 List of Chromium Command Line Switches

浏览器缓存

内置浏览器的缓存默认在

SAO Utils/Configs/Web Browser Engine/Cache

目录下, 删除该目录即可清除所有浏览器的缓存和记录. 特别地, 推荐保留 Cache 目录下的 Local Storage 文件夹以保留一些网页挂件的用户配置信息.

开发接口/API

目前插件提供对传统 NERvSDK 中数据源接口进行转换, 以 HTTP GET 请求特定 URL 并且返回 JSON 数据.
返回的 JSON 数据中始终会包含一个名为 “result” 的执行结果, 该值与 COM 的 HRESULT 等价:
当 result >= 0 时成功;
当 result < 0 时失败. 一般来说正常运行会返回 0 (S_OK), 返回值对应的意义可以参考这里 A lot of HRESULT codes….

数据接口

URL http://nvg-data/

目前有已文档记载的 数据源, 数据类型, 可以在 NERvLibrary 查到其对应的 ID 和相关说明.

获取数据的值

GET /{数据源ID}/{数据ID}/{值ID}/query[?param={取值参数}[&unit={取值单位}]]

例子 – 获取空余物理内存大小并以 MB 为单位返回:

http://nvg-data/00000001-4F00-6144-7461-536f75726365/766A81E5-FC74-4C10-9020-27280857B1CB/0/query?unit=MB

对应 ID 转换为 NERvSDK 中定义的变量:

http://nvg-data/ID_ODataSource/DATA::ID_RAM/DATA::RAM::U64_PHYSICAL/query?unit=MB

成功的 Response:

{
    "result": 0,            // S_OK
    "data": {
        "value": 10281,     // 空余 10281 MB
        "maximum": 24573,   // 最多 24573 MB
        "minimum": 0,       // 最少 0 MB
        "unit": "MB",       // 单位 "MB"
        "type": 2,          // 数据类型 DATA::UNSIGNED
        "interval": 1000    // 建议更新间隔: 1000 MS
    }
}

失败的 Response:

{
    "result": -2147467259,  // E_FAIL
    "data": null
}

执行数据对应的动作

GET /{数据源ID}/{数据ID}/{值ID}/invoke[?param={执行参数}]

例子 – 执行支持 CAD 播放器的’下一曲’操作:

http://nvg-data/A60D2B8A-DCD9-4753-9E3F-C9F2B686F34B/26DDF5CF-528B-46b4-B184-19ED771D495D/0/invoke?param=next

对应 ID 转换为 NERvSDK 中定义的变量:

http://nvg-data/RangerCD::ID_OMusicPlayerDataSource/RangerCD::MusicPlayer::ID_CAD/0/invoke?param=next

本地存取

window.localStorage

如果有需要保存/读取一些数据, 例如挂件的配置信息, 暂时可以使用 HTML5 标准提供的 localStorage 对象存取”Key-Value”数据. 由于本地文件使用”file:///”协议, 导致所有本地挂件共用同一域的本地存储对象, 所以在考虑键名的事情请尽量使用能够唯一标记的键, 或者直接使用 UUID.
例子 – 存取一个 JSON 对象:

// 存储 JSON 对象
var user = {'name': 'YUI', 'id': 'MHCP-001'};
localStorage.setItem('GPBeta.YUI', JSON.stringify(user));
// 读取 JSON 对象
console.log('Hi! ' + JSON.parse(localStorage.getItem('GPBeta.YUI')).name);

已知问题

变更历史

    2016.03.30 – 1.1.3

  1. 提升浏览器引擎性能和响应速度.
  2. 废除 –max-frame-rate 命令行参数.
    2016.01.27 – 1.1.2

  1. 修正某些情况下右键菜单无法选择项目.
    2015.12.18 – 1.1.1

  1. 修正在没有 SP1 补丁的 64位 Windows 7 或 Vista 系统下, 启用本插件时程序崩溃.
  2. 修正由于显卡驱动问题造成的网页空白.
  3. 修正无法正常浏览操作 PDF 文件.
  4. 取消浏览器窗口的透明网页背景.
  5. 开发者工具窗口跟随主窗口自动关闭.
    2015.12.11 – 1.1.0

  1. 初始版本.

插件下载

版本 核心 Flash 下载
1.1.3 Chromium 45.0.2454.101 Flapper 19.0.0.226 点击下载
       
历史版本
1.1.2 Chromium 45.0.2454.101 Flapper 19.0.0.226 32位/64位
1.1.1 Chromium 45.0.2454.101 Flapper 19.0.0.226 32位/64位
1.1.0 Chromium 45.0.2454.101 Flapper 19.0.0.226 32位/64位
    • 宅の鼠
    • 2015/12/12 1:14下午

    为什么bilibili直播页面没有背景,可以直接看到桌面

      • yu_love_nico
      • 2015/12/12 1:21下午

      没加载完全吧,刷新试试

      • 宅の鼠
      • 2015/12/12 1:38下午

      刷新过也不行,其他网页都没事

    • 我这倒没这种情况倒是贴吧会成这样

    • JALY
    • 2015/12/12 1:06下午

    wow!希望可以加入收藏夹!嗯,如果可以的话,想要能从本地HTML文件直接导入[呵呵]

    • Akarin
    • 2015/12/12 12:41下午

    希望能够添加一个“关闭循环菜单”的按钮,现在的循环菜单一点都用不习惯啊,每次都不知道我自己翻到哪来了

  1. chromium命令行开关 怎么弄?该输入什么?

    • JImmy_Pang
    • 2015/12/12 12:12下午

    用得到可是沒有聲音…

    • 枕头好软
    • 2015/12/12 11:55上午

    怎么用内置浏览器打开b站呀?

    • 图像设定——链接——输入网址——打开即可

      • 云之彼端
      • 2015/12/14 10:07上午

      我的输不了网址,按键盘没反应

  2. 大家仔细看说明 要最新的sao update1 才可以使用此插件的。。不要急着下载然后出问题matianmadi的。。

    • damekun
    • 2015/12/12 11:38上午

    希望可以加入一个功能:引入用户自己的chrome的缓存..这样就不用再在sao里面一个一个去登录..缓存的清理也方便很多了

    • Heathcliff
    • 2015/12/12 10:02上午

    这个浏览器可以安装插件吗?

    • 豆哥
    • 2015/12/12 9:31上午

    好吧。。我的错,,,内个,,下载的时候呗默认改成zip了。。。。。现在改回来了。。

    • 豆哥
    • 2015/12/12 9:25上午

    额。。。站长!!表示不会安装!!双击来了CEF host文件没有反应!!!怎么办!!!!

    • 233
    • 2015/12/12 8:58上午

    3d模式下,桌面网页挂件多开容易爆炸

  3. 为什么我弄了还是用浏览器打开

      • Aninte
      • 2015/12/12 3:10下午

      重启软件

  4. 怎么获取不到更新呢?

    • 风zhi轨迹
    • 2015/12/11 10:24下午

    终于更新了,正好刚换了win10。另外,大爱chrome

  1. 暂无 Trackback



return top