Chrome 확장 | 아키텍처

5255 단어 chrome-extension

개요



Chrome 확장 아키텍처

The background page



background pages는 background.html을 뒤로 잡고
JavaScript에서 브라우저의 동작을 제어합니다.

background pages는 두 가지 종류가 있습니다.

Persistent Background Pages



항상 열려 있습니다.
배경 페이지는 Chrome 확장 기능에 의해 자동으로 생성됩니다.
만약, 임의의 페이지를 이용하고 싶은 경우는 스스로 지정하는 것도 가능.
  • manifest.json

  • manifest.json
    {
      "name": "My extension",
      ...
      "background": {
        "scripts": ["background.js"]
      },
      ...
    }
    

    Persistent Background Pages에 대한 자세한 내용은 다음을 참조하십시오.
    배경 페이지

    이벤트 페이지



    필요에 따라 열거나 닫습니다.
    항상 열려있을 필요가 없다면 이벤트 페이지를 사용하는 것이 좋습니다.
  • manifest.json

  • manifest.json
    {
      "name": "My extension",
      ...
      "background": {
        "scripts": ["eventPage.js"],
        "persistent": false
      },
      ...
    }
    

    이벤트 페이지에 대한 자세한 내용은 다음을 참조하십시오.
    이벤트 페이지

    UI pages



    Chrome 확장은 일반 HTML 페이지를 UI로 사용할 수 있습니다.

    Browser Action + Popup



    Browser Action과 함께 HTML로 작성된 팝업을 사용할 수 있습니다.
    팝업은 내부적으로 뒷면에 있는 background.html에서 호출됩니다.
  • Tampermonkey 팝업 예제



  • Browser Action + Popup에 대한 자세한 내용은 다음을 참조하십시오.
    Browser Action

    Options Page



    Chrome 확장 프로그램 맞춤설정을 위한 설정 화면을 HTML에서 사용할 수 있습니다.
  • iKnow 옵션 화면의 예



  • Options Page에 대한 자세한 내용은 다음을 참조하십시오.
    Options Page

    Override Page



    Override Page는 일반적으로 Google 크롬에서 제공하는 화면을 확장할 수 있습니다.
    예를 들면
  • Bookmark Manager Page
  • History Page
  • New Tab Page

  • 등.

    Override Page에 대한 자세한 내용은 다음을 참조하십시오.
    Override Page

    Communication between pages



    Chrome 확장은 종종 여러 페이지에서 상호 연동해야합니다.
    그 때는 chrome.extension 의 메소드를 이용한다.
    예를 들면
  • getViews()
  • getBackgroundPage()

  • 등.

    Communication between pages에 대한 자세한 내용은 다음을 참조하십시오.
    Communication between pages

    Content scripts



    Chrome 확장 프로그램이 웹 페이지와 상호 작용하려면 content script가 필요합니다.

    content script 는
  • 웹 페이지의 세부 사항을 읽고 페이지를 변경할 수 있습니다
  • 상위 Chrome 확장과 분리 할 수 ​​없습니다.
  • 부모가되는 Chrome 확장 프로그램과 메시지를 보낼 수 있습니다

  • Content scripts에 대한 자세한 내용은 다음을 참조하십시오.
    Content scripts

    Using the chrome.* APIs



    chrome.* APIs

    외부 자료



    Chrome Extension | Overview | Architecture

    좋은 웹페이지 즐겨찾기