이 문제를 해결하는 방법은 간단하다. 일단 page_actions.icon을 사용하는 확장은 manifest.json을 편집하면 된다. 또 서명을 요구하는 확장은 서명을 추가해서 사용하면 된다. 이 글에서는 델리셔스 확장 0.2를 예로 사용해서 설명하도록 하겠다.
오동작 하는 확장의 변경
chrome-delicious-extension-0.2.crx에 마우스 오른쪽 단추를 클릭한 뒤 다른 이름으로 저장을 클릭한다. 델리셔스 확장은 현재 0.4까지 올라와 있지만 0.3 이상의 판은 주소 표시줄에 아이콘을 만드는 것이 아니라 상태 표시줄에 나타나기 때문에 지금까지 0.2판을 사용하고 있다.
chrome-delicious-extension-0.2.crx라는 파일 이름을 chrome-delicious-extension-0.2.zip으로 바꾼 뒤 임의의 폴더(예: E:\Down\Imsi\Extension\Delicious)에 압축을 풀어둔다.
풀어둔 압축 파일 중 manifest.json 파일을 불러온 뒤 page_actions 배열의 icon을 icons로 바꾼 뒤 저장한다.
변경전
"page_actions": [
{
"id": "TagPageAction",
"name": "The TagPageAction for Delicious",
"icon": "tagUp24.png",
"tooltip": "Click to tag the page with Delicious",
"type": "tab"
}
]
변경후
"page_actions": [
{
"id": "TagPageAction",
"name": "The TagPageAction for Delicious",
"icons": "tagUp24.png",
"tooltip": "Click to tag the page with Delicious",
"type": "tab"
}
]
서명을 추가한 뒤 확장 생성
서명이 없는 확장이나 파일로만 가지고 있는 확장은 크롬 확장을 직접 패키징해서 사용하면 된다. 절차는 다름과 같다.
현재 실행 중인 모든 크롬을 끝낸다. 크롬을 실행하고 있으면 크롬 창만 활성화되므로 작업 관리자로 떠있는 크롬이 있는지 확인한 뒤 실행해야 한다.
명령행에서 다음과 같은 형식의 명령을 실행한다.
<크롬 설치 폴더>\chrome.exe --pack-extension=<확장을 저장한 폴더>
예:
c:\Users\artech\AppData\Local\Google\Chrome\Application\chrome.exe --pack-extension=e:\down\Imsi\Extension\Delicious
다음 그림과 같은 창이 나타나면 확인 단추를 클릭한다. 그림을 보면 알 수 있지만 확장(CRX)과 서명(PEM)이 만들어 진 것을 알 수 있다. 이제 이 확장을 크롬에 끌어 놓아 확장을 설치할 수 있다.