Programing

Firefox 확장을 개발하는 가장 쉬운 방법은 무엇입니까?

lottogame 2020. 12. 5. 09:07
반응형

Firefox 확장을 개발하는 가장 쉬운 방법은 무엇입니까?


현재 활성화 된 탭의 URL을 단축하고 단축 된 URL로 팝업을 표시하고 클립 보드에 넣는 간단한 Firefox 확장 프로그램을 개발할 계획입니다.

Google 크롬에서는 ( http://developer.chrome.com/extensions/getstarted.html 에 따르면) 매우 쉽습니다. 순수 JavaScript와 브라우저의 UI와 상호 작용하는 JavaScript API에 대한 몇 가지 호출이 있습니다.

그러나 좋은 Firefox 확장 자습서를 검색 한 후 가장 공식적으로 보이는 링크는 다음과 같습니다.

그들에 따르면 브라우저의 UI와 가장 간단한 상호 작용을 위해 XUL 언어를 배워야 할 것 같습니다. 또한 개발 중에 기본 프로필을 호스로 만들고, 복잡한 디렉터리 구조를 만들고, 모호한 XML로 매니페스트를 작성하고, 구현하는 모든 것을 패키징하고 테스트하는 방법 등을 파악하지 않도록 사용자 지정 Firefox 프로필을 설정해야합니다.

2013 년입니다. Firefox 확장 기능을 쉽게 구축 할 수있는 방법이 없나요?


2013 년입니다. Firefox 확장 기능을 쉽게 구축 할 수있는 방법이 없나요?

네, 있습니다!

질문에 제공 한 링크는 믿을 수 없을 정도로 오래되었습니다. Firefox 확장 기능을 개발하는 새롭고 훨씬 더 나은 방법 인 Firefox Add-on SDK가 있습니다.

그러나 'firefox addon tutorial'의 라인을 따라 검색하여 우연히 발견하는 것은 꽤 어렵습니다. Mozilla가 더 공격적으로 광고하지 않거나 최소한 찾은 페이지에서 언급하지 않는다는 것이 놀랍습니다.

시작 단계 (Mac / Linux, PC와 비슷해야 함) :

  • https://addons.mozilla.org/en-US/developers/builder 에서 SDK를 다운로드하고 압축을 풉니 다.
  • README 파일을 빠르게 살펴 봅니다 (항상 유용함).
  • source bin/activateSDK 디렉토리 (README 파일이있는 동일한 디렉토리)에서 실행합니다 .
  • 실행 -SDK 문서cfx docs 의 로컬 사본을 부트 스트랩 하고 브라우저에서 엽니 다.
  • SDK 디렉토리를 그대로두고 확장을위한 빈 디렉토리를 만듭니다.
  • cfx init확장자 dir 내부에서 실행 -필요한 모든 파일 / 디렉토리를 생성합니다.
  • 나머지 Getting-started-with-cfx 페이지를 따르십시오 .
    • lib/main.js추가 기능 모음에 사용자 정의 위젯을 배치하려면 JS 몇 줄로 업데이트 하십시오.
    • 실행 cfx run-새 반짝이는 확장이 포함 된 새로운 Firefox 인스턴스를 엽니 다.

대체로 문서를 읽고, SDK API에 익숙해지고, 추가 기능 모음 대신 탐색 모음에 위젯을 배치 할 SDK 모듈찾고 , 모든 기능을 갖춘 확장을 개발 하는 데 몇 시간 밖에 걸리지 않았습니다 . 약 50 줄의 자바 스크립트.

HTH!

최신 정보

WebExtensions 라는 새로운 표준이 있습니다.

에서 MDN

현재 Firefox 추가 기능 개발을위한 여러 도구 세트가 있지만 WebExtensions는 2017 년 말까지 표준이 될 것입니다.

새 추가 기능 을 작성하는 경우 WebExtension을 작성하는 것이 좋습니다 .


예, 확장을 빌드하는 데 사용할 수있는 세 가지 기술이 있습니다.

  1. 애드온 SDK 기반 확장
  2. 수동으로 부트 스트랩 된 재시작없는 확장
  3. 오버레이 확장

여기에서 비교를 읽을 수 있습니다.

가능하다면 재시작없는 확장 메커니즘을 사용하지만 특정 작업을 단순화하고 자체적으로 정리하는 추가 기능 SDK를 사용하는 것이 좋습니다. 추가 기능 SDK가 필요에 충분하지 않은 경우 대신 수동 재시작없는 확장을 구현하십시오.

추가 기능 SDK 기반 확장을 시작하는 단계

  1. 설치
  2. 사용자 인터페이스 만들기
  3. 브라우저와 상호 작용

현재 https://blog.mozilla.org/addons/2016/11/23/add-ons-in-2017/ , 향후 유일한 방법은 사용하는 것입니다 WebExtensions을 . 마지막 SDK 확장은 Firefox 52에 대해 허용되는 반면 Firefox 57은 WebExtensions 만 지원 하는 다른 모든 확장 지원을 종료합니다 .

Firefox는 Google 크롬의 확장 API를 복사했습니다. 따라서 Chrome 확장 프로그램을 사용 하고 모든 API가 Firefox에서 이미 지원되는지 확인할 수 있습니다 (현재 상태 여야 함). NoScript 의 Giorgio Maone 과 같은 프로그래머 는 WebExtensions의 변경을 적극적으로 지원합니다 .

WebExtension을 개발하려면 다음이 필요합니다.

  • either the web-ext-tool that can be installed via

    npm install --global web-ext
    
  • or simply use Firefox's about:debugging or Chromium's chrome:extensions to temporarily load the webextension.

Either way, you need a manifest.json file in a directory created by you, which glues all functionality together. See https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Your_first_WebExtension for a first example. Or the Google docs at https://developer.chrome.com/getstarted.


There are two official ways for developing add-ons, each of them has pros and cons:

1- WebExtensions (newer method):

WebExtensions는 Firefox 추가 기능의 미래입니다. WebExtensions API를 사용할 수 있다면 최선의 선택입니다. 지금 WebExtensions를 개발하고 게시 할 수 있지만 아직 초기 상태입니다.

2- 애드온 SDK (이전 방법) :

추가 기능 SDK는 Firefox 추가 기능 개발을위한 API와이를 개발, 테스트 및 패키징하기위한 도구를 제공합니다.


Firefox 애드온 SDK를 사용하여 확장을 개발하는 방법에 대한 튜토리얼을 만들었습니다.

애드온 SDK로 Firefox 확장을 개발하는 방법

참고 URL : https://stackoverflow.com/questions/20409349/what-is-the-easiest-way-to-develop-firefox-extension

반응형