여러 동기화 된 기기에서 Chrome 확장 프로그램을 사용 중지하지 않고 사용 중지하는 방법 )가 훌륭하게 작동하지만 Ubuntu의 트랙 패드에서 방해가된다는

4 개의 다른 워크 스테이션에서 Chrome을 사용하고 있으며 내 확장 프로그램이 모든 워크 스테이션에서 동기화되었습니다.

내가 가진 문제 는 실제 마우스가 있으면 확장 기능 중 하나 ( Gestures for Chrome )가 훌륭하게 작동하지만 Ubuntu의 트랙 패드에서 방해가된다는 것입니다.

Ubuntu 컴퓨터에서 비활성화하면 내부 동기화 메커니즘 으로 인해 모든 Chrome 설치에서 비활성화됩니다 .

Q : 단일 컴퓨터에서만 확장을 선택적으로 비활성화 할 수 있습니까?



답변

보안 문제에 따라 Chrome은 NPAPI 플러그인이 포함 된 확장 프로그램을 동기화하지 않습니다.

출처

NPAPI 플러그인이란 무엇입니까?

NPAPI 플러그인에서 실행되는 코드는 현재 사용자의 모든 권한을 가지며 어떤 식 으로든 Chrome에 의한 악성 입력으로부터 샌드 박스되거나 보호되지 않습니다. 컨텐츠 스크립트 또는 XMLHttpRequest로 작업 할 때와 같이 신뢰할 수없는 소스의 입력을 처리 할 때는 특히주의해야합니다.

출처

이론

Chrome에서 NPAPI를 사용하여 확장 프로그램을 인식하는 방식으로 확장 프로그램을 수정하면 문제가 없습니다.

어떻게

  1. 먼저 Screen Capture (Google의) 와 같은 NPAPI 확장 의 더미 .dll이 필요합니다 . Google이 NPAPI 지원을 중단하기로 결정 했기 때문에 확장 프로그램이 Google Play 스토어에서 제거되었습니다 . 그러나 이것은 우리 시나리오에는 중요하지 않습니다. 다행히도 공식 Screen Capture Wiki 에는 여전히 소스 코드가 포함되어 있습니다. 우리는 완전한 확장자가 필요하지 않으며 NPAPI .dll 만 필요합니다 . 직접 다운로드screen_capture.dll

  2. 둘째, 동기화해서는 안되는 확장 폴더로 이동하십시오. 귀하의 경우 Chrome 용 제스처 .
    ..\profile\Default\Extensions\jpkfjicglakibpenojifdiepckckakgk\1.12.1_0

  3. manifest.json 파일을 수정하고 Stackoverflow 또는 developer.chrome.com설명 된대로 NPAPI 플러그인을 추가하십시오.

    {
      "name": "My extension",
      ...
      "plugins": [
        { "path": "screen_capture.dll" }
      ],
      ...
    }
    
  4. 동기화하지 않으려는 확장 프로그램 의 background.html 파일을 수정하십시오 ( 위의 Stackoverflow 답변 참조).

    <embed type="application/x-my-extension" id="pluginId">
    <script>
      var plugin = document.getElementById("pluginId");
      var result = plugin.myPluginMethod();  // call a method in your plugin
      console.log("my plugin returned: " + result);
    </script>
    
  5. 할 수있다 필요 NPAPI 지원을 다시 활성화 를 통해 미래를chrome://flags/#enable-npapi

여기에서 당신은 당신의 자신에 있습니다. 확장 코딩에 대해 충분하지 않습니다.
그것이 왜 이론입니다 🙂


답변

이것이 당신이 찾고있는 것이 아니지만 시도해 볼 수 있습니다. 오른쪽 모서리에있는 3 줄 / 렌치 아이콘을 클릭하여 Chrome 에서 설정 메뉴를 엽니 다 . 이제 고급 동기화 설정을 엽니 다 .

이제 동기화 할 옵션을 선택한 다음 확장 옵션을 선택 취소하십시오 . 이제 확장 프로그램이 다른 PC와 동기화되지 않습니다.


답변

원하는 확장을 로컬 확장으로 설치할 수 있습니다.

  1. 당신이에서 원하는 확장의 ID 찾기 chrome://extensions활성화 개발자 모드를 .

  2. Google 설치 디렉토리로 이동하십시오. Windows: %localappdata%\Google\Chrome\User Data\Default\Extensions\{Extension_ID} \{Version_Number}

  3. 어딘가에 저장하십시오.

  4. 돌아 chrome://extensions개발자 활성화 모드 를 누릅니다 Load unpacked extension. 그리고 확장의 새 사본으로 이동하십시오.

  5. 이제 확장명이 두 번 표시 됩니다. 실제 확장을 비활성화 하십시오.

이 방법에는 좋지 않은 측면이 있기 때문에 Disable 이라고 말하면 자동 업데이트가 손실되므로 업데이트 할 때마다 위의 단계를 반복해서 반복해야합니다.

어느 것이 실제 사본인지 새 사본인지 확실하지 않은 경우 다음에서 로드 된 ID 태그를 확인하십시오 . {Path_To_Your_Copy}


답변

나를 위해 작동하는 한 가지는 Chrome이 Chrome 작업 관리자를 사용할 때마다 플러그인 프로세스를 수동으로 종료하는 것입니다. 이것은 다음과 같이 달성 될 수 있습니다 :

  • (Mac의 경우) 메뉴> 추가 도구> 작업 관리자
  • (PC의 경우) 메뉴 모음을 마우스 오른쪽 버튼으로 클릭하고> 작업 관리자 또는 Shift+Esc

그런 다음 실행하지 않으려는 확장을 클릭하고 “프로세스 종료”를 클릭하십시오.

직장에는 두 대의 컴퓨터가 있으며 Google 행 아웃이 두 ​​컴퓨터 모두에 팝업되는 것을 원하지 않습니다. 유일한 나쁜 점은 크롬을 시작할 때 마다이 작업을 수행해야한다는 것입니다.


답변

이것은 단호한 대답이 아니라 문제를 조사 할 또 다른 전망입니다.

Chrome 동기화 시스템은 어떤 방식 으로든 허용하지 않으므로 단일 컴퓨터에서 등급을 맞춤 설정합니다. 그리고 확장 범위의 플래그로 작동하는 추가 확장 기능이있는 솔루션 disable/enable은 실패합니다!

동일한 사용자 계정을 동시에 사용하는 다른 컴퓨터는 변경 사항을 반영합니다.

이러한 정보 교환을 피하는 방법은 @avirk 가 확장에서 동기화를 사용하지 않도록 제안한 방법 이지만이 솔루션이 사용자 환경에 적합하지 않은 것 같습니다.

그런 다음 필요한 결과를 얻기 위해 채택 할 수있는 두 가지 아이디어를 더 제안하겠습니다.

  • 두 번째 계정을 만들면 자신의 익스텐션 그룹을 사용자 정의 할 수 있습니다 (이 솔루션은 다른 컴퓨터에서 다른 ScriptSafe 프로파일을 갖기 위해 개인적으로 사용합니다)

다른 제안은 다소 덜 전통적이며 나쁜 핵 으로 간주 될 수 있지만 모든 방법으로 설명하므로 더 넓은 선택을 할 수 있습니다.

  • 문제가있는 플러그인의 폴더로 이동하여
    .config/google-chrome/Default/Extensions/jpkfjicglakibpenojifdiepckckakgk/versionfolder
    “background_page.html”파일의 내용을 지 웁니다.
    “이 예제는 플러그인에만 적용 할 수 있습니다. Gestures for Chrome (TM)”

이렇게하면 페이지를로드 할 때 예외가 발생하여 확장 프로그램의 이벤트 코드가 올바르게 실행될 수 없습니다.
따라서이 확장에 대한 로컬 비활성화가 가능합니다.

확장 프로그램에 대한 새 업데이트를받을 때마다 새 버전 폴더에서이 작업을 다시 실행해야합니다.


답변

내가 찾은 또 다른 솔루션은 Chrome에 포함 된 정책 메커니즘을 사용하는 것입니다. Google은 그룹 정책을 통해 확장 프로그램을 관리 할 수있는 가능성을 제공합니다. 블랙리스트에 원치 않는 확장 기능을 추가하여이 PC의 동기화를 효과적으로 제거했습니다. 이러한 옵션을 수동으로 설정하여이 지식을 활용할 수 있습니다.

다음은 Windows PC에 대한 간단한 설명입니다.

  1. 레지스트리 편집기를 엽니 다 (regedit)
  2. HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Google \ Chrome으로 이동하여 존재하지 않는 경우 생성
  3. “ExtensionInstallBlacklist”라는 새 키를 만듭니다.
  4. 새 값 (REG_SZ)을 추가하고 이름을 “1”로 지정하십시오. 이미 존재하는 경우 이름을 “2”로 지정하십시오.
  5. 이 값의 데이터를 제거하려는 확장 프로그램의 ID로 설정하십시오.

이렇게하면 다음에 Chrome을 시작할 때 확장 프로그램이 제거됩니다. 이것은 현재 사용중인 PC에만 영향을줍니다. Chrome을 새로 설치하여 확인했습니다. 로그인 후 모든 확장 프로그램이로드되었습니다. 특히 다른 PC의 블랙리스트에 추가 한 확장 프로그램이로드되었습니다.

이 정책 설정에 대한 설명서는 여기에서 찾을 수 있으며 다른 운영 체제에 대한 설정도 보여줍니다.

http://dev.chromium.org/administrators/policy-list-3#ExtensionInstallBlacklist


답변

이것은 다소 오래된 질문이지만 여전히 나를 괴롭힌 것입니다. 자 여기 2 센트가 있습니다.

이를 위해 다른 확장을 사용할 수 있습니다. 나는 나 자신이이 두 플러그인 사이를 전환 해왔다 : ” Extensions Manager (일명 스위처)

편리한 확장, 응용 프로그램 및 테마 관리자. 확장 기능, 응용 프로그램을 빠르고 쉽게 활성화, 비활성화, 제거하는 라이트 팝업 관리자

또는 ” SimpleExtManager

확장 기능의 옵션을 활성화, 비활성화 및 액세스 할 수있는 간단한 메뉴입니다. ‘Simple’시리즈에 또 다른 추가. 이번에는 확장 관리자입니다.

특징은 다음과 같습니다.

  • 팝업을 통해 활성화 / 비활성화, 옵션 액세스 및 확장 프로그램 제거를위한 기본 기능
  • 팝업을 사용자 정의
  • 확장 그룹을 만드는 기능
  • 팝업 및 마우스 오른쪽 버튼 클릭 메뉴를 통해 확장 그룹 활성화 / 비활성화
  • 이벤트 페이지 사용

나는 두 확장 모두를 좋아하지만 가장 좋아하는 것을 말할 수있는 지점에 도달하지 못했습니다. 둘 다 많은 개발 과정을 겪고 있으며 자주 업데이트됩니다.