로드뷰 flash 문제

지도와 로드뷰를 같이 사용하고 있었는데…
오늘 확인해보니 갑자기 로드뷰가 안나옵니다…

지도 호출하는게 예전껄로 되어있어서 그런가해서
dapi.kakao.com/v2/maps/sdk.js 로 변경했는데도 안됩니다.
콘솔창에서 로그를 보니…
Uncaught ReferenceError: daum.maps.Roadview requires Flash Player 10 or above or a browser with CSS Transform 3D.

이렇게 나오는데 플래쉬 문제인거 같은데요…

IE는 정상적으로 나오는데 크롬이 안나오네요… 몇일전까지만해도 문제가 없었는데…
갑자기 왜 이러는걸까요…?

로드뷰가 플래시기반이라 플래시는 반드시 설치되어 있어야 하고요.
광고, 팝업, 플래시 차단을 위한 확장 프로그램을 사용하고 계시다면 로드뷰가 나오지 않을 수 있습니다.
혹시라도 크롬자체 기능으로 플래시가 차단되어 있을 수 있습니다.

이것을 허용으로 바꿔주시면 됩니다.

지금 확인해보니까… 다음에서 제공해주는 지도 API 샘플에서도 로드뷰가 안나오고 있습니다…

크롬 버전은 61.0.3163.100(공식 빌드)
최신버전이구요 ㅠㅠ…

확인 부탁드립니다…

안녕하세요,

크롬 주소창에서
chrome://settings/content/flash
들어가보시면 플래시 관련 설정을 확인하실 수 있습니다~

API 샘플에서 나오게 하려면 허용리스트에 apis.map.daum.net 가 추가되어 있어야 합니다.

감사합니다.

안녕하세요…

말씀해주신 내용 확인하였습니다…

정상적으로 나오는데요…

추가적으로 문의드리고 싶은 내용이 있는데…

예전에는 허용리스트에 추가 없이 정상적으로 나오는것을 확인하였었는데…

지금은 왜 그런건가요 ?

위에 설정을 해야만 로드뷰가 보인다면…

로드뷰를 사용하는 모든 사이트를 추가해야 정상적으로 동작한다는 말인데…

다른 방법이 없는건가요 ?

결국 저 플래시 설정을 사용자가 직접 해줘야 하고 에러처리도 개발자가 해줘야된다는건가요?

Uncaught ReferenceError: daum.maps.Roadview requires Flash Player 10 or above or a browser with CSS Transform 3D.

네, 사용자가 플래시를 강제로 꺼둔 상태라면 켜야하는건 당연한 것이고요.
사용자가 플래시를 차단한 경우에 예외처리는 개발자가 해야 합니다.

음… 실제로 저는 최근까지도 별다른 설정을 건드린적이 없는데도
크롬에서 플래시가 갑자기 안나온다거나 한 적은 없었습니다.
회사 내 다른 동료분들도 그런 제보는 없었고요.

API가 몇번의 배포는 있었지만 로드뷰와 관련된 변경은 없었습니다.
말씀주신 현상의 원인에 대해서는 제가 알 수 있는 방법이 없는 것 같습니다.

사용자가 플래시를 꺼둔 상태라면 켜야되는건 당연하다고 생각하는데요…

이해가 안가는 부분은…

플래시가 켜져있는 상태이지만… 로드뷰는 실행이 안되고

크롬 플래시 설정창에서 해당사이트 허용을 일일이 등록해야 로드뷰가 정상적으로 나오는데…

로드뷰를 사용하는 수많은 사이트를 일일이 등록할 수도 없고…

이에 대한 해결책은 없는건가여…?

음… 뭐랄까… 뭔가 사이다같은 해결책은 현 시점에서 없을 것 같은데요.

크롬을 제공하는 구글은 브라우저에서 플래시 사용을 배제시키는 방침을 가지고 있습니다.
구글이 플래시를 지원하는 데드라인을 정한 것이 2020년인데
이를 위해서 단계적으로 플래시에 대한 사용을 제한시키고 있는 상황입니다.

이렇게 발표된 이상 API를 제공하는 카카오와 같은 vender에서 플래시가 아닌 다른 기술로 로드뷰를 만들어 제공하는 것이 가장 깔끔하겠죠.

하지만 아직 전환을 위한 준비가 되지 않았기에
현재 크롬을 사용하는 사용자들은 이런 불편함을 감수해야 합니다.

제가 원하는 답변은 아니지만 답변 해주셔서 감사드립니다.

힌트를 map.daum.net 에서 찾았네요.

사실 저 에러메시지는 로드뷰 객체를 생성할 때 throw 됩니다.
적절히 예외처리 하셔서 아래 다음지도와 같이 레이어팝업 처리가 필요할 것 같습니다.

팝업에 최신버전 다운로드를 클릭하면 Flash 권한을 크롬이 요청하게 되는데 저 버튼의 정체는 아래와 같더군요.

<a href="http://get.adobe.com/flashplayer/" target="_blank">최신버전 다운로드</a>

다른 개발자분들도 참고 바랍니다.

2개의 좋아요

앵커 사용해서 하려고 노력중인데
try catch 문에서 에러 발생시 anchor.click()했는데, 팝업창으로 뜨네요.
크롬 개발자 도구에서 anchor.click()하는 코드를 입력하면 원하는대로 위 권한을 요청합니다 메세지가 뜨구요 ㅠ

무슨 차이가 있을까요?

글쎄요… 저도 차이를 모르겠습니다.

window.location = 'http://get.adobe.com/flashplayer/'

catch문에서 이렇게 한 번 시도해 보시겠어요?

흠 해결되지는 않네요 ㅠㅠ

알려주신 방법으로 좀더 찾아보겠습니다!

그냥 로드 뷰 창 에러시 로드뷰 화면을 예쁘게 플래시 요청하는 화면으로…

앳지브라우저 일때는 어떻게 해야하나요?

여러가지 검색해서 따라해 봤지만 안되는군요

var roadview = new daum.maps.Roadview(roadviewContainer); 부분

지도 API 샘플 페이지에서도 로드뷰가 안되는데요…
http://apis.map.daum.net/web/sample/basicRoadview/

제가 Mac을 써서 정확한 스샷을 찍어드리기 힘든데,

엣지도 크롬과 똑같은 방식으로 플래시를 허용해 주어야 합니다.
엣지에서도 주소표시줄의 주소 맨 왼쪽에 느낌표가 뜰겁니다. 이걸 눌러서 플래시를 허용해 주세요.

image
위 스크린 샷은 크롬이지만 엣지도 비슷합니다.

20190614_150745

앳지브라우저에는 없어요…

20190614_150935

고급설정에 flash player 사용 체크 했는데요 그래도 안되요

그럼 그거랑 상관없이
확장프로그램으로 설치된 플러그인들 중에
Ad Blocker 가 있는지 확인해 보세요.

이것 마저 없으면… 저는 잘 모르겠네요. 제가 확인 가능한 edge는 현재 잘 표시되고 있습니다.