2010-11-30 2 views
0

Mac 용 Safari 전용 플러그인을 설치하는 방법을 알아야합니다. .plugin 파일을 Internet Plug-ins 폴더에 복사하면 실행시 Firefox 및 Google 크롬에서도 감지됩니다.브라우저에서 등록하기 전에 NPAPI 플러그인에서 UserAgent를 검색하는 방법은 무엇입니까?

이 문제를 방지하기 위해 API 호출을 NP_UserAgent 사용하여 사용 도구를 확인하고 Safari가 아닌 경우 종료합니다. 그러나 플러그인은 여전히 ​​Chrome과 Firefox에서 등록됩니다. 어쨌든 브라우저에서 플러그인을 등록하지 않고도 동일한 작업을 수행 할 수 있습니까?

답변

2

NPAPI 플러그인을 작성하는 경우 모든 브라우저에서 작동해야합니다. 왜 다른 브라우저를 실행하는 사용자가 플러그인을 사용하지 못하게하려고하는지 설명 할 수 있습니까? 기본적인 필요에 따라 더 나은 접근법이있을 수 있습니다. 예를 들어 Safari 확장 프로그램과 함께 작동하려면 확장 프로그램에서 플러그인 만 처리하는 MIME 유형을 사용하고 다른 브라우저가 플러그인을 감지하면 확장 프로그램이 플러그인을 감지하도록해야합니다. 실제로 인스턴스화되지 않습니다).

에만 Safari 또는 Apple의 WebKit 프레임 워크를 사용하는 브라우저를 타겟팅 하시겠습니까? 후자의 경우 NPAPI 플러그인 대신 WebKit plugin을 쓸 수 있습니다.

+0

감사합니다. @smorgan ... 앞으로 나아갈 방법이라고 생각하십시오. 네, 추측은 절대적으로 맞습니다 ... 플러그인은 Safari 확장 기능과 함께 작동합니다. 실제로 Firefox와 Chrome의 기존 확장 프로그램이며 Safari로 이식하려고합니다. 예, 원한다면 :) http://www.cloudmagic.com/ – themoondothshine

0

자바 스크립트로 브라우저를 감지하고 <object> 태그를 Safari 인 경우에만 HTML 페이지에 삽입하십시오. 물론 플러그인이 등록되는 것을 막지는 못합니다.

또 다른 방법은 Safari 용 WebKit 플러그인을 작성하는 것입니다. NPAPI보다 쉽게 ​​구현할 수 있습니다.