2011-01-18 1 views
3

맞춤식으로 텍스트 기반 기능에 액세스하기 위해 Chromium의 사용자 지정 빌드를 만들고 있으며 액세스 권한을 노출하는 방법을 모르겠습니다. 자바 스크립트를 통한 새로운 네이티브 메소드.Chromium에서 네이티브 코드에 액세스 할 수있는 사용자 지정 메서드로 JavaScript API를 확장하는 방법

다른 버전의 WebKit에는 addToJavaScriptWindowObject (즉 Qt)와 같은 메소드가 있지만 Chromium에서 동일한 작업을 수행하는 방법을 잘 모르겠습니다.

답변

2

프로세스 간 API는 좁은 인터페이스이므로 본질적으로 최소한의 호출 수가 있습니다.

우선, 내가 (이에 대한 자세한 내용은 목록에 "carnitas"을 검색 할 수 있습니다) 크로스 브라우저 API에 새로운 기능을 추가 할 수있는 문서화 된 방식을 지적하고 싶습니다 : https://sites.google.com/a/chromium.org/dev/developers/design-documents/multi-process-architecture/how-to-add-new-features

필자는 기존 API 호출에 연결하는 솔루션을 생각해 냈습니다. 기본적으로 자바 스크립트 코드를 자바 스크립트의 "prompt()"함수를 호출하여 동기 호출 (complete tab까지 전체 탭 고정) 및/또는 비동기 메시지의 경우 "externalHost.postMessage". 브라우저 측면에서이 두 호출을 연결하고 선택적으로 응답을 반환합니다.

당신은 내가 버클륨, 여기에 크롬 랩퍼 라이브러리를 위해 쓴 코드를 볼 수 있습니다 https://github.com/sirikata/berkelium/blob/chromium8/src/WindowImpl.cpp 동일한 기술이 될 수 (나는 이러한 API에 후크하는 방법을 볼 수있는 "javascriptCall은"참조 모든 장소, 검색) render_view_host.cc 또는 TabContent를 수정하려는 경우 Chromium 자체에 적용됩니다.

API에 적합한/통합 수준을 고려해야하며 Chrome 코드 기반에서 음성 - 텍스트 기능을 사용하는 데 관심이있는 경우 다른 기능 구현됩니다.

+0

모든 것이 의미가 있다고 생각합니다. 이제 실제로 시도해보십시오. 도와 주셔서 감사합니다! – davejohnson

관련 문제