WebView CEF 技术文档

WebView CEF 技术文档

webview_cef WebView for Flutter Desktop Apps using CEF(Chromium Embedded Framework) [Work in Progress] webview_cef 项目地址: https://gitcode.com/gh_mirrors/we/webview_cef

1. 安装指南

1.1 系统要求

  • Windows: Windows 7 及以上版本
  • macOS: macOS 10.12 及以上版本
  • Linux: x64 和 arm64 架构

1.2 安装步骤

1.2.1 Windows 安装
  1. 在应用文件夹中,编辑 windows\runner\main.cpp 文件,添加以下代码:

    #include "webview_cef/webview_cef_plugin_c_api.h"
    
    int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev,
                          _In_ wchar_t *command_line, _In_ int show_command) {
      initCEFProcesses();
    
      ::MSG msg;
      while (::GetMessage(&msg, nullptr, 0, 0)) {
        ::TranslateMessage(&msg);
        ::DispatchMessage(&msg);
    
        handleWndProcForCEF(msg.hwnd, msg.message, msg.wParam, msg.lParam);
      }
    
  2. 首次构建项目时,会自动下载预构建的 CEF 二进制包(约 200MB),因此首次构建可能需要较长时间。

1.2.2 macOS 安装
  1. 将项目克隆到项目根目录下的 packages/ 文件夹中。

  2. 更新 pubspec.yaml 文件,添加以下内容:

    dependencies:
      webview_cef:
        path: ./packages/webview_cef
    
  3. macos/ 文件夹中执行以下步骤:

    • 根据目标机器架构下载预构建的 CEF 包(arm64 或 intel)。
    • 解压并将所有文件放入 macos/third/cef 目录中。
    • 运行示例应用。
1.2.3 Linux 安装
  1. 参考示例中的方法进行安装,与 Windows 类似。
  2. 修改 linux/CMakeLists.txt 文件中的资源复制方法,使其与 Windows 一致。

2. 项目使用说明

2.1 支持的操作系统

  • Windows 7 及以上版本
  • macOS 10.12 及以上版本
  • Linux(x64 和 arm64 架构)

2.2 功能概述

  • 多实例支持
  • IME 支持(仅支持第三方 IME 和 Windows 上的微软 IME)
  • 鼠标事件支持
  • JS 桥接支持
  • Cookie 操作支持
  • 触摸板支持
  • devTools 支持

2.3 示例应用

项目提供了一个简单的 WebView 应用示例,用于测试 webview_cef 插件的功能。

3. 项目 API 使用文档

3.1 初始化 CEF 进程

在 Windows 和 Linux 平台上,需要在 main.cpp 文件中调用 initCEFProcesses() 函数来初始化 CEF 进程。

3.2 处理 CEF 消息

在 Windows 平台上,需要在消息循环中调用 handleWndProcForCEF() 函数来处理 CEF 消息。

3.3 多进程支持

目前 macOS 平台尚未启用多进程支持,未来可能会提供更优雅的解决方案。

4. 项目安装方式

4.1 通过 pubspec.yaml 安装

pubspec.yaml 文件中添加以下依赖:

dependencies:
  webview_cef:
    path: ./packages/webview_cef

4.2 手动克隆项目

将项目克隆到本地,并根据不同平台的要求进行配置和安装。

4.3 下载预构建的 CEF 包

根据目标平台下载相应的预构建 CEF 包,并将其解压到指定目录中。


通过以上步骤,您可以顺利安装并使用 webview_cef 插件,享受其提供的强大功能。

webview_cef WebView for Flutter Desktop Apps using CEF(Chromium Embedded Framework) [Work in Progress] webview_cef 项目地址: https://gitcode.com/gh_mirrors/we/webview_cef

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

萧航肖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值