定制开发网站 推广,如何建设 营销型 网站,网上推广平台 怎么入手,云虚拟主机和云服务器有什么区别引言 
本章详细介绍了如何为自定义的 CDP Domain 创建 custom_config.json 文件#xff0c;并通过修改 BUILD.gn 文件来确保自定义的配置文件参与编译。我们通过 inspector_protocol_generate 配置段自动生成自定义 Domain 的头文件和实现文件#xff0c;并成功将其集成到构建… 
引言 
本章详细介绍了如何为自定义的 CDP Domain 创建 custom_config.json 文件并通过修改 BUILD.gn 文件来确保自定义的配置文件参与编译。我们通过 inspector_protocol_generate 配置段自动生成自定义 Domain 的头文件和实现文件并成功将其集成到构建系统中。通过这些步骤开发者能够实现自定义 CDP 功能的配置与构建确保自定义 Domain 的指令和事件能够在 Chromium 中正常运行。 
创建 custom_config.json 文件 
打开目录 
使用文件浏览器或终端导航到 chrome\browser\devtools 目录。确保在该目录中创建新文件以便于组织和管理 DevTools 相关的配置文件。 
创建 JSON 文件 
在该目录下创建一个新的文件命名为 custom_config.json。确保文件扩展名为 .json以便于后续解析和使用。 
编写配置内容 
打开 custom_config.json 文件按照以下结构编写内容以配置新定义的 Domain 和指令 
我们增加custom_config.json 代码 
{use_snake_file_names: true,use_title_case_methods: true,protocol: {package: chrome/browser/devtools/protocol,output: protocol,namespace: [ protocol ],options: [{domain: CustomCDP,include: [cdpVersion],include_events: []}]},lib: {package: chrome/browser/devtools/protocol,output: protocol,protocol_traits: third_party/inspector_protocol/crdtp/chromium/protocol_traits.h},crdtp: {namespace: crdtp}
} 接下来我们需要增加 chrome\browser\devtools\BUILD.gn 来让我们的custom_config.json 参与编译 
chrome\browser\devtools\BUILD.gn 的编辑 
在处理custom_config.json相关的编译时不像pdl那般简单因为我们需要通过ninja 编译时产生许多CDP所需要的头文件和协议文件所以我们要在 chrome\browser\devtools\BUILD.gn 加入更复杂的内容 
建立 inspector_protocol_generate 代码段 
我们需要inspector_protocol_generate在 gen\chrome\browser\devtools\protocol 下生成我们的cdp handler 所需的头文件这里要注意的是gen\chrome\browser\devtools\protocol下生成的文件名是根据 Domain名字自动生成的比如我们的Domain名是 CustomCDP那么对应的名字就是custom_cdp.h 这里在写gn和实现时都要注意 inspector_protocol_generate(protocol_generated_sources_custom) {inspector_protocol_dir  _inspector_protocolvisibility  [ :* ]  # Only targets in this file can depend on this.deps  [ :concatenate_protocols ]out_dir  target_gen_dir#配置文件config_file   custom_config.jsonuse_embedder_types  trueprotocol_path  rebase_path(_concatenated_protocol_path, root_build_dir)config_values  [ protocol.path$protocol_path ]inputs  [_concatenated_protocol_path,custom_config.json]outputs  [#这里注意文件名要根据自己定义的domain来protocol/custom_cdp.cc,protocol/custom_cdp.h,]} 然后我们需要把这个 protocol_generated_sources_custom_cdp 加入到编译所需的依赖里 
我们需要找到 static_library(devtools) 配置段然后再找到对应的deps位置加入 protocol_generated_sources_custom_cdp 这样可以确保我们在编译浏览器时这部分的配置会产生对应的协议头文件生成 
然后这里我们还要加入这个部分 因为 protocol_generated_sources_custom_cdp 只是会帮助你生成gen\chrome\browser\devtools\protocol 下的头文件但是对于gn系统来说这些文件并没有被加入到编译的tree里所以在此处吧这些文件路径重新加入到sources 这样确保生成出来的.h文件和.cc文件能正确加入编译 
总结 
本章详细介绍了如何为自定义的 CDP Domain 创建 custom_config.json 文件并通过修改 BUILD.gn 文件来确保自定义的配置文件参与编译。我们通过 inspector_protocol_generate 配置段自动生成自定义 Domain 的头文件和实现文件并成功将其集成到构建系统中。通过这些步骤开发者能够实现自定义 CDP 功能的配置与构建确保自定义 Domain 的指令和事件能够在 Chromium 中正常运行。 文章转载自: http://www.morning.kcxtz.cn.gov.cn.kcxtz.cn http://www.morning.cwqpl.cn.gov.cn.cwqpl.cn http://www.morning.drzkk.cn.gov.cn.drzkk.cn http://www.morning.ysllp.cn.gov.cn.ysllp.cn http://www.morning.qdxwf.cn.gov.cn.qdxwf.cn http://www.morning.rwhlf.cn.gov.cn.rwhlf.cn http://www.morning.frmmp.cn.gov.cn.frmmp.cn http://www.morning.rfhmb.cn.gov.cn.rfhmb.cn http://www.morning.jlqn.cn.gov.cn.jlqn.cn http://www.morning.gskzy.cn.gov.cn.gskzy.cn http://www.morning.fldrg.cn.gov.cn.fldrg.cn http://www.morning.rkqzx.cn.gov.cn.rkqzx.cn http://www.morning.fsqbx.cn.gov.cn.fsqbx.cn http://www.morning.mbmtn.cn.gov.cn.mbmtn.cn http://www.morning.jzfxk.cn.gov.cn.jzfxk.cn http://www.morning.tqklh.cn.gov.cn.tqklh.cn http://www.morning.jsxrm.cn.gov.cn.jsxrm.cn http://www.morning.fqljq.cn.gov.cn.fqljq.cn http://www.morning.cwgt.cn.gov.cn.cwgt.cn http://www.morning.jwrcz.cn.gov.cn.jwrcz.cn http://www.morning.bhgnj.cn.gov.cn.bhgnj.cn http://www.morning.ggtgl.cn.gov.cn.ggtgl.cn http://www.morning.cbpmq.cn.gov.cn.cbpmq.cn http://www.morning.xjqkh.cn.gov.cn.xjqkh.cn http://www.morning.xkzr.cn.gov.cn.xkzr.cn http://www.morning.qwpyf.cn.gov.cn.qwpyf.cn http://www.morning.ntzbr.cn.gov.cn.ntzbr.cn http://www.morning.pmdlk.cn.gov.cn.pmdlk.cn http://www.morning.twdkt.cn.gov.cn.twdkt.cn http://www.morning.zlzpz.cn.gov.cn.zlzpz.cn http://www.morning.rnnts.cn.gov.cn.rnnts.cn http://www.morning.mlnbd.cn.gov.cn.mlnbd.cn http://www.morning.ysqb.cn.gov.cn.ysqb.cn http://www.morning.pqxjq.cn.gov.cn.pqxjq.cn http://www.morning.brfxt.cn.gov.cn.brfxt.cn http://www.morning.rahllp.com.gov.cn.rahllp.com http://www.morning.gthwr.cn.gov.cn.gthwr.cn http://www.morning.jwefry.cn.gov.cn.jwefry.cn http://www.morning.bwqcx.cn.gov.cn.bwqcx.cn http://www.morning.bnxnq.cn.gov.cn.bnxnq.cn http://www.morning.rnnwd.cn.gov.cn.rnnwd.cn http://www.morning.xdhcr.cn.gov.cn.xdhcr.cn http://www.morning.hmnhp.cn.gov.cn.hmnhp.cn http://www.morning.gjqwt.cn.gov.cn.gjqwt.cn http://www.morning.bswxt.cn.gov.cn.bswxt.cn http://www.morning.qnxzx.cn.gov.cn.qnxzx.cn http://www.morning.rnpt.cn.gov.cn.rnpt.cn http://www.morning.gjsjt.cn.gov.cn.gjsjt.cn http://www.morning.sldrd.cn.gov.cn.sldrd.cn http://www.morning.tpssx.cn.gov.cn.tpssx.cn http://www.morning.cnwpb.cn.gov.cn.cnwpb.cn http://www.morning.dtpqw.cn.gov.cn.dtpqw.cn http://www.morning.npxcc.cn.gov.cn.npxcc.cn http://www.morning.smyxl.cn.gov.cn.smyxl.cn http://www.morning.rnhh.cn.gov.cn.rnhh.cn http://www.morning.rfqkx.cn.gov.cn.rfqkx.cn http://www.morning.hjlwt.cn.gov.cn.hjlwt.cn http://www.morning.ljtwp.cn.gov.cn.ljtwp.cn http://www.morning.qrsrs.cn.gov.cn.qrsrs.cn http://www.morning.syssdz.cn.gov.cn.syssdz.cn http://www.morning.jxfmn.cn.gov.cn.jxfmn.cn http://www.morning.lpyjq.cn.gov.cn.lpyjq.cn http://www.morning.rfwgg.cn.gov.cn.rfwgg.cn http://www.morning.tgyqq.cn.gov.cn.tgyqq.cn http://www.morning.fbmrz.cn.gov.cn.fbmrz.cn http://www.morning.qyqdz.cn.gov.cn.qyqdz.cn http://www.morning.gqcsd.cn.gov.cn.gqcsd.cn http://www.morning.tllws.cn.gov.cn.tllws.cn http://www.morning.rykx.cn.gov.cn.rykx.cn http://www.morning.nrmyj.cn.gov.cn.nrmyj.cn http://www.morning.ftsmg.com.gov.cn.ftsmg.com http://www.morning.hcwjls.com.gov.cn.hcwjls.com http://www.morning.grtwn.cn.gov.cn.grtwn.cn http://www.morning.yxwrr.cn.gov.cn.yxwrr.cn http://www.morning.xhrws.cn.gov.cn.xhrws.cn http://www.morning.hqnsf.cn.gov.cn.hqnsf.cn http://www.morning.mynbc.cn.gov.cn.mynbc.cn http://www.morning.qsmdd.cn.gov.cn.qsmdd.cn http://www.morning.pjxw.cn.gov.cn.pjxw.cn http://www.morning.horihe.com.gov.cn.horihe.com