chromium相關問題集合--持續更新中
- Q: 如何替換chromium瀏覽器中的圖示?
A: 替換src\chrome\app\theme\chromium下面相關的圖片;
- Q: chrome應用可以分為哪些型別?
A:
case Manifest::TYPE_EXTENSION:
case Manifest::TYPE_THEME:case Manifest::TYPE_USER_SCRIPT:
case Manifest::TYPE_HOSTED_APP:
case Manifest::TYPE_LEGACY_PACKAGED_APP:
case Manifest::TYPE_PLATFORM_APP:
case Manifest::TYPE_SHARED_MODULE:
- Q:extension是可以通過哪些發方式來載入?
A:
// What an extension was loaded from.
// NOTE: These values are stored as integers in the preferences and used
// in histograms so don't remove or reorder existing items. Just append
// to the end.
enum Location {
INVALID_LOCATION,
INTERNAL, // A crx file from the internal Extensions directory.
EXTERNAL_PREF, // A crx file from an external directory (via prefs).
EXTERNAL_REGISTRY, // A crx file from an external directory (via eg the
// registry on Windows).
UNPACKED, // From loading an unpacked extension from the
// extensions settings page.
COMPONENT, // An integral component of Chrome itself, which
// happens to be implemented as an extension. We don't
// show these in the management UI.
EXTERNAL_PREF_DOWNLOAD, // A crx file from an external directory (via
// prefs), installed from an update URL.
EXTERNAL_POLICY_DOWNLOAD, // A crx file from an external directory (via
// admin policies), installed from an update URL.
COMMAND_LINE, // --load-extension.
EXTERNAL_POLICY, // A crx file from an external directory (via admin
// policies), cached locally and installed from the
// cache.
EXTERNAL_COMPONENT, // Similar to COMPONENT in that it's considered an
// internal implementation detail of chrome, but
// installed from an update URL like the *DOWNLOAD ones.
NUM_LOCATIONS
};
An extension that's installed automatically is known as an external extension. Google Chrome supports two ways of installing external extensions:
Using a preferences JSON file (Mac OS X and Linux only)Using the Windows registry (Windows only)src/chrome/common/extensions/docs/templates/articles/external_extensions.html
- Q:以什麼理由來通知系統我們需要通過本地安裝呢?
enum OffStoreInstallAllowReason {
OffStoreInstallDisallowed,
OffStoreInstallAllowedFromSettingsPage,
OffStoreInstallAllowedBecausePref,
OffStoreInstallAllowedInTest,
NumOffStoreInstallAllowReasons
};
- 擴充套件預設安裝示例
IN_PROC_BROWSER_TEST_F(ExtensionManagementApiTest, Basics) {
LoadExtensions();
base::FilePath basedir = test_data_dir_.AppendASCII("management");
InstallNamedExtension(basedir, "internal_extension", Manifest::INTERNAL);
InstallNamedExtension(basedir, "external_extension",
Manifest::EXTERNAL_PREF);
InstallNamedExtension(basedir, "admin_extension",
Manifest::EXTERNAL_POLICY_DOWNLOAD);
ASSERT_TRUE(RunExtensionSubtest("management/test", "basics.html"));
}
- Q: 如何編譯chromium?
A: 最新的chromium(2014-03-18)已經不再支援單獨的vs編譯方式,需要用nanja或者nanja+vs的方式來編譯,具體參考這裡。
- Q: chromium程式碼由於網路的原因很難下載原始碼,怎麼辦?
A: 可以從網上下載別人編譯好的放到自己的本地,可以從這裡下載http://pan.baidu.com/s/1kTofGc3,請仔細看說明後在動手。但程式碼目錄一定要和原編譯人的一樣,也可以按如下操作解決,說白了就是vs、sdk等有些變數的路徑查詢不到。具體詳細討論看這裡
http://code.google.com/p/chromium/issues/detail?id=353425
Delete depot_tools\win_toolchain and reinstal it (by running gclient runhooks) error wont happen in new partition.
- Q:chromium release版本在那裡看?
A:http://src.chromium.org/viewvc/chrome/releases和http://src.chromium.org/svn/releases/
- Q: 如何開始學習chromium?
- Q:如何開始除錯chromium?啟動時預設的動作執行在是如何開始的?
- window 平臺cmd下能用什麼命令看一個程序的父程序的PID?
- 在哪裡可以瞭解到chromium設計的策略?
- 如何修改安裝後第一次執行時顯示的歡迎頁面?
- 如何給chromium新增預設的extension
- Q: 如何移除"缺少 Google API 金鑰,因此 Chromium 的部分功能將無法使用"的提示?
browser->tab_strip_model()->GetActiveWebContents()));
- chrome安裝目錄下各個dll檔案的作用
- Chromium有那些主要功能模組?
ash - aura she'll
breakpad - 崩潰捕捉
chrome - 所有的功能都集中在這裡,包含content
cryoto - 加密解密
nataive libary - 替代activex的技術
media - 音訊解碼
ipc - 程序間通訊
jingle - p2p庫
net - 網路通訊元件
ui -----------
- chrome安裝目錄下各個dll檔案的作用
chrome.dll:瀏覽器的核心檔案,執行chrome幾乎所有的功能;
blink_web.dll:
content.dll: 提供核心多程序的sandbox功能的模組,具體看http://www.chromium.org/developers/content-module
resources.pak:是chrome的資原始檔,包括很多如chrome://開頭的頁面資源等
icudtl.dat:
nacl_irt_x86_32.nexe: Google
Native Client相關外掛
net.dll:網路模組
v8.dll:javascript解析引擎模組;
nacl_irt_x86_64.nexe:NACL模組,
mksnapshot.ia32.exe:
d3dcompiler_46.dll:硬體加速匹配模組
blink_platform.dll
sync.dll:
skia.dll:
media.dll:
chrome_200_percent.pak: 高DPI資源,應該是theme資源
nacl64.exe: 難道可以直接執行window上的傳統app?
cc.dll:
gpu.dll
webkit_storage_browser.dll
crnss.dll
ash.dll
ppapi_proxy.dll
icui18n.dll
base_win64.dll:base 64編解碼庫
chrome_100_percent.pak:普通DPI theme資源包
views.dll
base.dll
protoc.exe
policy_component.dll
ffmpegsumo.dll
gcm.dll
gfx.dll
keyboard_resources.pak:
wifi_component.dll:
ppapi_shared.dll
ppapi_shared_win64.dll
yasm.exe
translator.dll
ui_base.dll
libGLESv2.dll
app_list.dll
wtf.dll
message_center.dll
url_matcher.dll
gl_wrapper.dll
gles2_implementation.dll
aura.dll
compositor.dll
crssl.dll
crnspr.dll
metro_driver.dll
content_resources.pak
ipc_win64.dll
printing.dll
net_with_v8.dll
protobuf_lite.dll
base_prefs.dll
events.dll
ipc.dll
delegate_execute.exe
gin.dll
wm_core.dll
url_lib.dll
webkit_storage_common.dll
keyboard.dll
native_theme.dll
gfx_geometry.dll
ash_with_content.dll
wow_helper.exe
gesture_detection.dll
webkit_gpu.dll
webkit_compositor_bindings.dll
webview.dll
shell_dialogs.dll
webdata_common.dll
ppapi_host.dll
blink_heap.dll
chrome_elf.dll
libEGL.dll
webkit_common.dll
mojo_common_lib.dll
webkit_child.dll
shared_memory_support.dll
keyed_service_content.dll
blink_common.dll
browser_ui_views.dll
surface.dll
wtf_unittest_helpers.dll
libvpx_obj_int_extract.exe
mojo_system.dll
locales:
- chromium中定義的url常量在什麼地方?
A:src\chrome\common\url_constants.cc
A:
1. http://blog.csdn.net/zero_lee/article/details/7896856
2. https://support.google.com/chrome/answer/2918032?hl=en&rd=1
- 編譯cef3時報錯型別衝突,估計chromium也會遇到吧
2> C:\Program Files (x86)\Windows Kits\8.0\Include\shared\wtypesbase.h(260) : 參見“_COAUTHIDENTITY”的宣告
2>c:\program files (x86)\microsoft sdks\windows\v7.0a\include\wtypes.h(512): error C2011: “_COAUTHINFO”:“struct”型別重定義
2> C:\Program Files (x86)\Windows Kits\8.0\Include\shared\wtypesbase.h(271) : 參見“_COAUTHINFO”的宣告
A:進入C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include,重新命名WTypes.h.
Q: chromium擴充套件中permissions是在哪裡註冊的?
A: 直接參考這個連結吧:http://blog.csdn.net/talking12391239/article/details/40374241