Chrome Extension

[크롬 익스텐션] 익스텐션 내 파일 접근하기

먹세 2023. 5. 25. 16:28

익스텐션이 지워졌는지 여부를 확인하기 위한 방법 중 하나로,

익스텐션 내에 있는 파일의 존재여부로 판단하는 방법.

 

퍼미션 세팅

manifest.json

"web_accessible_resources": [
    {
      "resources": ["images/icon16.png"],
      "matches": ["https://*.mydomain.com/*"]
    }
  ]

 

resources 에는 접근할 수 있는 파일들의 목록을 적어준다. 이 때, 경로는 root 기준

matches 에는 접근을 허용하는 도메인을 적어준다.

 

 

익스텐션 내 파일 접근 방법

chrome-extension://[크롬 익스텐션ID]/images/icon16.png

위와 같은 형식으로 접근하면 된다.

function detectExtension(extensionId, callback) {
    var img;
    img = new Image();
    img.src = "chrome-extension://" + extensionId + "/images/icon16.png";
    img.onload = function () {
        callback(true);
    };
    img.onerror = function () {
        callback(false);
    };
}
 
detectExtension('ajofijsodijfeijsdifjslkdjf', function (ret) {
    if (true === ret) {
        console.log('chrome extension installed');
    } else {
        console.log('not installed');
    }
});

 

https://developer.chrome.com/docs/extensions/mv3/manifest/web_accessible_resources/

 

Chrome Extensions Manifest: web_accessible_resources - Chrome Developers

Reference documentation for the web_accessible_resources property of manifest.json.

developer.chrome.com

 

반응형