최신 버전의 Chrome 기반 브라우저에서 디버그 모드가 분리 된 후 어떤 이유로 (버그가 아닌 기능 일 가능성이 있음) Chrome은 다음 알림을 남깁니다.
"프로그램이이 브라우저를 디버깅하기 시작했습니다."
기본적으로이 코드를 실행합니다.
let debugee = {tabId: sender.tab.id};
chrome.debugger.attach(debugee, '1.2', ()=>{});
chrome.debugger.detach(debugee);
그리고 위의 그림을 참조하십시오. Chrome은 detach
버전 80 까지이 알림을 제거했습니다 .
문제에 대한 설명을 찾았습니다. https://chromium.googlesource.com/chromium/src/+/HEAD/chrome/app/generated_resources.grd
<!-- DevTools attached infobar -->
<message name="IDS_DEV_TOOLS_INFOBAR_LABEL" desc="Label displayed in an infobar when external debugger is attached to the browser. The label does not disappear until the user dismisses it, even if the debugger is detached, and so should not imply that the debugger must still be debugging the browser, only that it was, and could still be.">
"<ph name="CLIENT_NAME">$1<ex>Extension Foo</ex></ph>" started debugging this browser
</message>
크롬 확장 프로그램에서이 메시지를 자동으로 지우거나 비활성화하는 방법에 대한 제안을 찾고 있습니다.
TL; DR 그런 방법은 없습니다.
Chrome의 새로운 동작은 보안 문제에 대한 어색한 수정의 결과입니다. 악성 확장 프로그램은 chrome.debugger API를 통해 빠르게 많은 피해를 입힐 수 있으며 작업이 수행 된 시간보다 적게 수행 된 경우에도 어떤 일이 일어 났는지 아무도 알 수 없습니다. 100ms.
보안 문제가 관련되었으므로 이전 동작은 복원되지 않지만 UI가 최소한 현재 디버거 상태를 반영해야한다는 데 동의했습니다 ( https://crbug.com/1096262 참조) . 현재 계획은 확장 프로그램이 분리 된 경우> = 5 초 동안 표시된 후 정보 표시 줄을 자동으로 닫고 상태와 동기화되도록 버튼 / 문자열을 업데이트하는 것입니다.
해결 방법은 --silent-debugger-extension-api
명령 줄 스위치로 크롬을 실행하는 것 입니다. debugger
권한 을 사용하는 악성 확장 프로그램을 즉시 또는 업데이트시 설치하지 않도록주의해야한다는 점에서 위험한 스위치 입니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다