一、创建事件名
- 打开
chrome/browser/extensions/event_names.h
添加
1 | namespace event_names { |
- 打开
chrome/browser/extensions/event_names.cc
添加
1 | namespace event_names { |
二、添加事件的描述
- 打开
chrome\common\extensions\api\wintrust.json
添加
1 | [{ |
三、添加触发扩展事件的事件
- 打开
content\public\browser\notification_types.h
添加
1 | enum NotificationType { |
四、绑定第三步事件的回调
- 打开
chrome/browser/extensions/browser_event_router.cc
添加绑定
1 | BrowserEventRouter::BrowserEventRouter(Profile* profile) |
实现回调
1 | void BrowserEventRouter::Observe(int type, |
五、实现触发消息
在某个合适和需要的位置以下列的代码触发 NOTIFICATION_LOGIN_BY_CERT_COMPLETE
事件
1 | + std::string detail("false"); |
六、测试新事件
在扩展的
manifest
里首先声明对wintrust
命名空间的权限1
2
3
4"permissions": [
"*://*/*",
"wintrust"
]
绑定事件回调函数
1
2
3chrome.wintrust.onLoginByCertComplete.addListener(function(success){
console.log('Login result is: ', success);
})
- 触发第五步定义的条件,使事件发生。