定制化chromium的修改方法

        由于chromium的代码量很大,且版本也是更新较快,很难短时间内消化吸收,主要方法:通过 cs.chromium.org 来查找关键字,修改完成后需要整体编译。

         本次修改大都是按照版本62.0.3202.62的源代码,其他版本会有函数名以及行数不同的存在,仅供参考。

一、修改进程描述以及图标
            
            1. E:\chromium\src\chrome\app\theme\chromium\BRANDING
        
二、修改所有关于chromium字样
            
            1. E:\chromium\src\chrome\app  *.grd以及*.grdp文件
            2. E:\chromium\src\components  
            
三、修改chrome.exe
            
            1. E:\chromium\src\chrome    build.gn
            2. E:\chromium\src\chrome\installer\mini_installer 
            3. 以及编译过程中出现的错误文件修改。全局搜索chrome.dll,修改所有文件,重新生成编译目录进行编译。
            
四、修改about version的版本号以及位数等
            
            首先查看E:\chromium\src\chrome\browser\ui\webui\settings\about_handler.cc 276行
            然后找到相关的IDName,通过IDName在cs.chromium.org中全局搜索该ID所在的文件进行修改。
            
            1. 版本号的修改:E:\chromium\src\chrome\VERSION  文件。
            2. 位数:E:\chromium\src\components\version_ui_strings.grdp 中修改相应的ID。
            3. 修改超链接:通过about_handler.cc 300行kChromiumProjectURL找到E:\chromium\src\chrome\common\url_constants.cc进行修改该值。
            
            
五、WebUi
            
            chromium的webui是实现c++与UI前端html/js、以及资源文件的一种交互方式。具体的实现方式可以看如下文章:
            http://www.chromium.org/developers/webui
            其中,包括URL请求到js,以及到grd文件,接着到c++文件,参数的传递,以及build.gn等等编译流程。
            
六、UI 本地化Localization
            
            http://www.chromium.org/developers/design-documents/ui-localization            
            
七、添加dll

            D:\src\chromium\src\chrome\installer\mini_installer\chrome.release
                    
八、去除chromium登录按钮
        
            通过代码查找了解得到该按钮的名字叫avatar,具体修改地址如下:
            E:\chromium\src\chrome\browser\ui\views\frame\avatar_button_manager.cc
            将34行-37行注释即可,此处为添加该按钮代码。
            
九、修改mini_installer的安装路径

            通过阅读mini_installer的build.gn和源码,可以了解到mini_installer的安装实则是通过setup.exe
            进行的,故需要通过修改setup.exe代码来调整安装路径,最终不断debug可以了解到可以通过如下路径进行添加或是修改。
            E:\chromium\src\chrome\installer\util\util_constants.h
                209行添加:extern const wchar_t kInstallHGDir[];
                                      extern const wchar_t kInstallHGBrowserDir[];
            E:\chromium\src\chrome\installer\util\util_constants.cc
                206行添加:const wchar_t kInstallHGDir[] = L"HighGuard\\";
                                     const wchar_t kInstallHGBrowserDir[] = L"HGBrowser\\";
          E:\chromium\src\chrome\installer\util\helper.cc
              int key = system_install ? base::DIR_PROGRAM_FILES : base::  DIR_PROGRAM_FILESX86
              注释掉之前的源码24行if语句的两行注释掉,之后添加如下代码:
                  install_path = install_path.Append(kInstallHGDir);
                    install_path = install_path.Append(kInstallHGBrowserDir);
                    
十、 修改去除Google-api key弹出信息

            E:\chromium\src\chrome\browser\ui\startup\startup_browser_creator_impl.cc 注释839 840行。                    

十一、修改去除设置页中关于登录、商店的信息

            1. E:\chromium\src\chrome\browser\resources\settings\people_page\people_page.html 139行 “$i18n{syncSignin}” 
            2. D:\src\chromium\src\chrome\browser\resources\settings\appearance_page\appearance_page.html 64行-74行
            
            
十二、去除打开时出现的Google的logo

            E:\chromium\src\chrome\browser\resources\local_ntp\local_ntp.html 28行
            

    

十三、调整打开浏览器输入PIN值对话框的位置

            将OpenSSL的crypt.c文件的load函数稍作修改,且移至                                           E:\chromium\src\chrome\browser\ui\startup\startup_browser_creator_impl.cc

 

 


 

你可能感兴趣的:(chromium)