应用程序 TCEFApplication

cef.NewApplication(disableRegisDefaultEvent …bool)

描述

创建主进程和子进程都需要的对象,每个进程的应用配置都是一样的。


功能函数

StartMainProcess

  1. StartMainProcess() bool

返回 bool
启动应用主进程,启动成功后

  1. 创建内部IPC事件监听,GO绑定JS变量,IPC初始化
  2. 如果是多进程方式则继续启动子进程,单进程方式只启动一次

StartSubProcess

  1. StartSubProcess() bool

返回 bool
如果设置了browseSubprocessPath独立子进程,在子进程程序中需要调用该函数,而不是StartMainProcess

Free

应用程序执行结束/关闭一搬会调用该函数销毁


事件函数

如果设置了,应用程序会触发事件。框架默认设置一些事件。

SetOnContextCreated - 默认注册

  1. SetOnContextCreated (func(browser *ICefBrowser, frame *ICefFrame, context *ICefV8Context) bool)

主进程、和子进程初始化时回调的事件

返回 bool: false时创建渲染进程IPC及变量绑定
参数

字段 描述 备注
ICefBrowser 浏览器对象 -
ICefFrame 浏览器内的Frame -
ICefV8Context 初始化的上下文对象 -

SetOnWebKitInitialized

  1. SetOnWebKitInitialized(func())

初始化设置全局回调 该事件函数没做特殊处理

参数 - 无

SetOnProcessMessageReceived - 默认注册

  1. SetOnProcessMessageReceived(func(browser *ICefBrowser, frame *ICefFrame, sourceProcess CefProcessId, message *ipc.ICefProcessMessage) bool)

进程间通信处理消息接收 - 渲染进程

返回 bool: 消息接收之后处理返回结果
参数

字段 描述 备注
ICefBrowser 浏览器对象 -
ICefFrame 浏览器内的Frame -
CefProcessId 进程ID - CefProcessId 类型 实际上是 0主进程 1渲染进程
ICefProcessMessage IPC进程消息 IPC通信使用的消息对象

SetOnBeforeChildProcessLaunch - 默认注册

  1. SetOnBeforeChildProcessLaunch(func(commandLine *TCefCommandLine))

启动子进程之前自定义命令行参数设置

作用 - 主进程
参数

字段 描述 备注
TCefCommandLine 命令行参数设置对象key-value -

SetOnBrowserDestroyed

  1. SetOnBrowserDestroyed(func(browser *ICefBrowser))

浏览器销毁回调事件

参数

字段 描述 备注
ICefBrowser 销毁的浏览器对象 -

SetOnLoadStart

  1. SetOnLoadStart(func(browser *ICefBrowser, frame *ICefFrame, transitionType TCefTransitionType))

页面开始加载

作用-渲染进程
参数

字段 描述 备注
ICefBrowser 浏览器对象 -
ICefFrame 浏览器内的Frame -
TCefTransitionType 过滤类型 - TCefTransitionType 类型 -

SetOnLoadEnd

  1. SetOnLoadEnd(func(browser *ICefBrowser, frame *ICefFrame, httpStatusCode int32))

页面加载完成

作用-渲染进程
参数

字段 描述 备注
ICefBrowser 浏览器对象 -
ICefFrame 浏览器内的Frame -
httpStatusCode http 状态码- int32类型 -

SetOnLoadError

  1. SetOnLoadError(func(browser *ICefBrowser, frame *ICefFrame, errorCode TCefErrorCode, errorText, failedUrl string))

页面加载错误

作用-渲染进程
参数

字段 描述 备注
ICefBrowser 浏览器对象 -
ICefFrame 浏览器内的Frame -
TCefErrorCode 错误码 -
errorText 错误描述文本 -
failedUrl 失败的URL地址 -

SetOnLoadingStateChange

  1. SetOnLoadingStateChange(func(browser *ICefBrowser, frame *ICefFrame, isLoading, canGoBack, canGoForward bool))

页面加载状态

作用-渲染进程
参数

字段 描述 备注
ICefBrowser 浏览器对象 -
ICefFrame 浏览器内的Frame -
isLoading true加载中 false加载完成 - bool 类型 -
canGoBack true可以后退 false不可以后退 - bool 类型 -
canGoForward true可以前进 false不可以前进 - bool 类型 -