태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

'flash 10'에 해당되는 글 5건

  1. 2008.11.09 런칭동영상으로 살펴본 FP10, CS4
  2. 2008.10.27 CS4 12월 4일 국내 런칭
  3. 2008.10.17 Flash Player10 보안샌드박스 변경에 따른 이슈 해결방법
  4. 2008.10.16 [FP10] FileReference는 어떻게 달라졌을까? (1)
  5. 2008.10.06 Flash Player10 보안샌드박스 (6)

런칭동영상으로 살펴본 FP10, CS4

CS4와 FP10이 2008년 10월 16일 부터 정식 판매 및 유통이 시작되었습니다. 아직 국내엔 유통되지 않고, 저 먼 미국에서 배를 타고 건너오고 있는 중이지만, 국내 CS4 정식런칭이 12월 4일로 다가온 만큼, 이제 국내에서 도입되는것도 초읽기가 된것 같습니다.

사실 모든 기업에서, 자사의 제품을 홍보할때는, 비교군과 자사 제품을 비교한다던지, 아니면 이전 버전에서 항상되거나 새롭게 추가되는 기능을 위주로 동영상이나 eDM, 홍보책자를 만들게 됩니다.

그래서, 그런지 홍보동영상 한편만 봐도, "아 이번 버전에선 무엇이 달라졌구나!"라고 간략히 알수 있는데요. 그럼 FP10과 CS4 런칭 동영상으로 FP10과 CS4에는 어떤점이 달라졌는가 살펴볼까요?


1. Flash Player10
Flash Player10은 이전에 astro라는 베타네임으로 시작했습니다. FP9이후의 큰 변화를 담고 있어서 많은 기대와 함께 혼선도 함께 가져온것 같습니다. (참고 - Flash Player 10 보안샌드박스 변화)

특히, 이번엔 Flash Player10의 정식출시가 Adobe MAX 이후로 예상되었지만, 실버라이트가 출시된 2일후 정식 출시가 되어서 많은 분들의 예상보다 약 1달가량 빨리 출시가 되었습니다.

그럼 Flash Player10에선 어떤 기능들이 새롭게 달라졌는지 살펴볼까요?
Flash Player 10의 런칭동영상은 여기서 살펴보실수 있습니다.

3D effects

사용자 삽입 이미지
Flash Player 10에서는 3D Draw가 Native에서 정식적으로 지원됩니다.
즉, 지금현재까지 x,y축에 극한되엇다면, z축을 이용해서 3D도 쉽게 렌더링 할수 있게 되었습니다.

3D Effect를 위해 GPU 가속기능이 추가되었으며, 조금더 원할한 랜더링을 위해 자바의 제너릭스와 흡사한 Vector, Vector3D도 추가되었습니다.

Custom filters and effects
사용자 삽입 이미지
Flash Player 10에서는 픽셀벤더라는 툴을 이용해서 포토샵이나 기타 툴에서 사용하는 필터나 이펙트를 스크립트로 만들어, Flash에 bytecode형태로 export하여, 런타임에서 바로 사용 할 수 있습니다.

즉, 이미지나 비디오 같은 화상자료도, 기존에 썼던 필터를 그대로 Flash에서 사용하 실 수 있다는 막강한 장점이 있습니다.

이와관련되어, 이번 RIA Camp에서 딴동네님께서 발표해 주셨습니다.(동영상 참고)

World-class typographic control
사용자 삽입 이미지
Flash Player9 에선 다국어가 제대로 지원되지 않는다는 아쉬움(?)이 있었는데요. Flash Player 10에서는 아시아권 문자를 포함한 전세계의 문자를 지원합니다. 또, 아시아권 문자에서는 안티앨리어싱 기능이 강화되었습니다. 그리고 새로운 텍스트엔진인 FTE(Flash Text Engine)을 지원해서, 단순한 문자열이 아닌, 다단의 문자열이나, 문자열 세로 쓰기등도 할 수 있습니다.

그런데 아쉽게도 Flash Player 10의 런칭동영상에 있는 World-class typographic control에서는 아랍어, 일본어, 중국어, 영문등은 흘러가는데 한국어는 보이지 않군요(?).....

Dynamic Sound Generation
사용자 삽입 이미지
그간 Flash Palyer 9에선 Sound와 관련해선 단순한 재생관리 정도만 할 수 있었습니다. 하지만 Flash Player 10에서는 SamplesCallBack 이벤트가 추가되고, 또 노이즈를 주는등 사운드를 동적으로 제어하고 효과를 줄 수도 있습니다.


2. CS4
Flash Player 10의 공개와 함께, CS4도 10월 16일 부터 정식 유통되기 시작하였습니다. 기존 CS3에 비해 여러 변화들이 있었는데요. 그 변화들을 간략히 런칭동영상에 담겨져 있습니다.

CS4의 런칭동영상은 여기서 보실수 있습니다. 초반의 1분 46초 분량이 런칭동영상이고 후반부터는 런칭과 관련된 온라인 쇼케이스입니다.

필자는 CS4정식 런칭동영상을 제일 처음봤을때는 지난 CS3 런칭동영상 보다는 약간 사이비종교(?)같은 느낌을 많이 받았는데, 보면볼수록, 왠지 CS4 제품군이 인터랙티브 하고, 크레이티브 한 점에 대해 더 잘 알게되는것 같습니다.

Procuction Premium
사용자 삽입 이미지
CS4 런칭 동영상은, 이전 시리즈와 다르게 마스터 콜렉션으로 부터 출발해서, 여러 제품들을 걸쳐와서, Procuct Premium으로 무엇을 만들수 있는가를 알려주는 부분부터 시작됩니다.

제일 첫번째에 있는 알수없는 표시는 아마 '아이디어'인것 같습니다. 그 외에는 일러스트레이터,포토샵, 사운드보스 인디자인, 플래시로 오른쪽에 있는 약간 사이비틱한 결과물을 만들어 내는군요.

Inspired vector graphics creation(영감적인 백터 그래픽을 만들기)
사용자 삽입 이미지
일단 저 위에 있는, 꿈틀꿈틀 거리는 이상한 시계모양의 그래픽을 만들려면, 밑그림 부터 그려야 겠죠?
일단, 영감적으로 벡터 그래픽을 만드는 과정으로 부터시작됩니다.

New dimensions in image editing(새로운 차원의 이미지 에디팅)
사용자 삽입 이미지
밑그림을 그렸으면, 이제 채색을 해야겠죠? 채색과 관련되어선 기존의 일러스트레이터나 포토샵을 사용했는데, 이번 CS4 제품군에서는 새로운 차원의 이미지 에디팅을 지원한다고 합니다.

예를들어 이미지를 에디팅 할때, 나침반 모양을 돌리면, 이미지가 회전되는등 다양한 기능들이 지원되는군요.

Compelling motion graphics(칭찬하지 않을수 없는 모션 그래픽)
사용자 삽입 이미지
밑그림을 채색을 하면, 이제 그 이미지들에 애니매이션 효과를 줘서 좀더 역동적으로 보이게 해야 겠죠? Flash CS4에서는 이와 관련해서, 모션을 좀더 다이나믹하고 쉽게 줄 수 있는 기능을 지원하고 있습니다.

Intuitive audio(직관적인 오디오)
사용자 삽입 이미지
이미지의 밑그림도 그리고, 채색도 하고, 애니메이션도 넣었다면? 이젠 마지막으로 음악을 삽입하면 완성이겠죠? 이와 관련해서 사운드보스로 직관적인 오디오를 넣게되면, 제일 처음에 보았던, 그 작품이 완성되게 됩니다.

그리고, 시작되었던 CS4의 여행은 좀더 더 멀리 퍼져나가서, 다양한 웹사이트들로 시작됩니다.

Web Premium
사용자 삽입 이미지
그리고 이런 여행들로 부터 잠시 나와, 사용자의 시각(See)와 Web Premium으로 이런 사이트들을 만들어 나가는 과정을 거치게 됩니다.

Efficient, powerful page design(유능한 그리고 강력한 페이지 디자인)
사용자 삽입 이미지
여러분이 보고 계시는 지금 현재 제 블로그도 하나의 웹페이지로 이루어 져있듯, 웹도 하나의 작은 페이지가 뭉쳐서 하나의 큰 웹사이트가 되게 되는데요.

이런 웹사이트들을 포토샵을 통해 디자인하고, 드림위버를 통해서 수십개의 페이지를 만들고, 그것들이 모여 하나의 웹이 되게 됩니다.

Rich expressive interactivity(리치하고 표현적인 인터랙티비티)
사용자 삽입 이미지
그간 HTML 위주의 웹 페에지의 가장 큰 장점은'정적'이다는 점이었습니다.
웹의 구조상 HTML은 웹사이트로부터 내려오고 브라우저에 뿌려주면 그걸로 끝입니다. 더 이상의 상호교류가 일어날 수 없습니다.

이런 웹 페이지의 어도비 RIA기술들이 총 출동해, 그간 고정적인 웹 페이지가 아닌 좀더 똑똑하면서 표현이 강하면서 상호 교류할수 있는 사이트들을 만들어 나갈 수 있습니다.

Flexible video editng(쉬운 비디오 편집)
사용자 삽입 이미지
웹사이트의 RIA 기술이 가미되면서, 가장 탄력을 붙은건 UCC산업입니다. 내가 찍은 홈비디오를 그대로 웹 사이트들에 올려서 전세계 네티즌과 손쉽게 공유할 수 있습니다.

이제 이런 공유를 넘어서서,나의 동영상을 손쉽게 편집하고, 또 인터넷에 간편하게 올릴 수 있습니다.

Shortcut to Brilliant(당신의 아이디어를 빚내는 가장 빠른 방법)
사용자 삽입 이미지

그간 동영상을 만들고, 여러 웹사이트를 만들어 보았는데요. 가장 마지막엔 CS4의 솔로건인 'Shortcut to Brilliant'를 보여주며 그 긴 여정을 마치게 됩니다..

CS4의 공식 솔로건은 Shortcut to Brilliant입니다. 한국어로 치면 "빚내는 가장 빠른 방법"인데요, 한국어 솔로건으로 바꿔보면 뭔가 빠진듯한 느낌이 들어서 걱정이었는데, 한국어 솔로건은 '당신의 아이디어를 빚내는 가장 빠른 방법' 이네요. ㅎㅎ


Flash Plasyer 10, 그리고 CS4의 출시로 분명 내년부터는 웹, 그리고 디자인 산업에서도 새로운 변화가 일어날것이라고 생각됩니다.

그 변화를 즐겨나갈 준비가 되셨는지요.
그리고 CS4의 솔로건처럼 "나의 아이디어를  빚나게 하는 가장 빠른길"이 될 수 있길 바랍니다.
신고
트랙백 1 댓글 0

CS4 12월 4일 국내 런칭

CS4가 그동안의 산고를 깨고, 10월 16일 정식 판매에 돌입하였습니다.

필자는, 이전부터 CS4를 미리 만나보았습니다. 사실 제가 디자이너는 아니라, CS4 전체 제품군을 살펴보지는 못했고, 플래시, 포토샵, 드림위버와 같은 웹 계열 애플리케이션을 살펴보았습니다.

사용자 삽입 이미지

제가 CS4 출시와 관련해서 제일 놀란것은, NDA가 깨지는 바로 다음날에 정식으로 유통 되었습니다. 또, CS4의 NDA가 걸려있는 전날인 10월 14일에 실버라이트 2가 정식으로 출시되었구요. 모종의 거시기(?)가 있는것 같지 않나요? ㅋㅋ 사실 Flash Player 10 배포와, CS4의 정식유통이 Adobe MAX가 있는 11월 중순경으로 알고있었는데, 그 예상이 완전히 빗나갔네요.

너무 갑작스러운 뉴스라, 이래저래 Flash Player 10의 보안샌드박스에 대비하시지 못하신 분들이 많으실거라고 생각합니다. Flash Player10의 보안샌드박스 변화는 여기를 통해 참고하시길 바라고, 또 얼마전에 Flash Player 10에서 완벽히 구동되는 업로드 컴포넌트를 지돌스타님께서 제작해주셨습니다. 정말 멋집니다 짝짝짝 > <

사용자 삽입 이미지

이번 CS4의 국내 정식런칭일은 12월 4일입니다. 원래 제가 알고있었던 그날짜 그대로여서, 나름 다행이라고 생각하고 있습니다. 지난번 RIA World와, 애크로뱃 런칭세미나때의 엄청난 규모를 이어서, 이번엔 더 큰 장소인 코엑스 컨벤션홀에서 개최된다고 하네요.

특이하게도, 이번 CS4런칭세미나는 두 세션으로 나눠서 진행하게 되는데, 일단 CS4제품군의 런칭세미나를 마치고 나면, FP10과 Flash의 런칭도 함께 진행된다고 합니다. 국내 RIA 시장이 그만큼 뜨겁게 달아올랐다는걸 보여주기라도 하는걸까요 ㅋㅋ

CS4 런칭세미나에 사전 등록하실려면 아래 링크를 통해서 등록해 주십시오!
등록하기

그럼 12월 4일 CS4를 만날것을 기약하겠습니다.

신고
트랙백 0 댓글 0

Flash Player10 보안샌드박스 변경에 따른 이슈 해결방법

Flash Player10은 15일 비교적 조용한 분위기에서 정식 런칭되었습니다. Flash Player가 없는 클라이언트들이 Flash Player을 설치하게 되면, 가장 최신버전인 10을 설치하게 됩니다. 또, 어도비의 본사 및 각지역 지사의 Flash Player 설치버전도 10으로 높여졌습니다.

그런데, Flash Player10에서는 총 8가지의 보안샌드박스 변경/추가가 발생하였고, 이들 변경에 대한 파급력도 큽니다. 하지만, 이런 Flash Player10의 보안샌드박스 변경사항에 대해 Flash/Flex 제품군을 쓰는 고객에 사전 안내가 없었고, 또 출시된 이후에도 변경사항에 대한 공지 및 해결방법에 대한 한국어 문서 또한 아직 내놓고 있지 않은 실정입니다.

그래서 이 문서는, 현재 많은 웹사이트에서 사용하고 있는 개발방법이 Flash Player 샌드박스 변경으로 작동하지 않는 원인과 해결방법에 대해 다루어보고자 합니다.

먼저, Flash Player10의 보안샌드박스 변경사항은 아래의 문서에서 살펴보시길 바랍니다.
문서보기

아울러, 어도비에서도 이런 보안샌드박스 변경 및 해결방법에 대해 빠른시일 내로 해당 제품군들을 사용하는 고객사들에게 안내해주었으면 하는 바람입니다.



사례1. 업로더 시스템에서 UI는 HTML로 구현되어있고, 업로더는 Flash로 만들어진경우

문제
현재 많은 웹사이트에서, 업로더 시스템을 구현할때 Flash는 1x1으로 숨겨놓고, 파일 선택, 업로드부분은 자바스크립트로 Flash의 함수를 호출해 실행하고, UI는 HTML로 구현하는 방법을 사용하고 있습니다.

이 방법을 이용해 얻을수 있는 장점은, Flash를 모르는 개발자 혹은 코더라도, Flash의 구속 없이 업로더의 UI를 자유 자재로 꾸밀수 있다는 장점이 있습니다.

또, 다중 파일을 쉽게 업로드 할 수 있다는 장점도 있습니다.

하지만, 이 방법은 Flash Player10 출시 이후로, 정상적으로 작동하지 않으며, 위와 같은 보안샌드박스 경고가 발생하게 됩니다.


원인

Flash Player10의 Filerefrence API의 보안샌드박스가 변경 되었습니다.
파일선택과 다운로드시 사용자의 직접적인 인터렉션을 필요로 합니다.
Filerefrence.browse를 통해 사용자의 로컬의 파일을 찾는 창을 띄울수 있고, Filerefrence.download를 통해 파일을 내려 받을수 있습니다.
두 메서드의 경우 종전엔 사용자의 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.
Filerefrence의 browse와 download 메서드를 실행할때에는 사용자가 Flash 상에서 직접 UI인터랙션을 취해 줘야 작동하게 됩니다.

따라서, 위의 방법은 UI를 HTML로 구현되어있고, 사용자의 인터랙션이 Flash 상이 아닌곳에서 browse, download 메서드를 호출하였기 때문에, 보안샌드박스 에러가 발생하게 됩니다.


해결방법
해결방법은 간단하게도, 기존 1x1 플래시 파일에서, 파일을 선택하거나 다운로드 하는 버튼은 HTML로 구현하지 않고, Flash로 구현해 주면 해결됩니다. 다만 업로드 버튼은 이번 보안샌드박스 변경사항에 반영되지 않았기 때문에, 기존처럼 HTML로 구현해서 사용하실수 있습니다.



사례2. 클립보드 지정에서 UI는 HTML로 구현되어있고, 클립보드를 지정하는 부분은 Flash로 만들어진 경우

문제
위의 사례1처럼 UI는 HTML로 구현되어 있고, 클립보드를 지정하는 부분은 1x1 플래시로 구현되어, 클립보드를 지정할때 JS로 플래시의 함수를 호출하는 방법은 현재 많은 웹2.0 사이트 혹은, 위젯 관련 사이트에서 클립보드를 지정할때 사용하고 있습니다.

이방법을 이용해서 얻을 수 잇는 장점은, 위처럼 Flash를 모르는 개발자나 코더도 UI를 HTML로 손쉽게 꾸밀수 있습니다. 그중 제일 강력한 장점은, JS로 클립보드를 지정하는것에 비해 거의 모든 크로싱플렛폼을 완벽히 지원한다는 점입니다.

하지만, 이 방법은 Flash Player10 출시 이후로, 정상적으로 작동하지 않으며, 위와 같은 보안샌드박스 경고가 발생하게 됩니다.


원인
Flash Player10에서 System.setClipboard 메서드의 보안샌드박스가 변경 되었습니다.
클립보드를 지정할시 사용자의 직접적인 인터렉션을 필요로 합니다.
System.setClipboard를 통해 사용자의 클립보드에 텍스트를 지정할 수 있습니다. 종전엔 사용자의 직접적인 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.
위의 내용처럼, 클립보드를 지정할때엔 반드시 사용자가 직접 Flash 상에서 UI인터렉션이 발생해야 작동하게 됩니다.

따라서, 위의 방법은 UI를 HTML로 구현되어있고, 사용자의 인터랙션이 Flash 상이 아닌곳에서 System.setClipboard 메서드를 호출하였기 때문에, 보안샌드박스 에러가 발생하게 됩니다.


해결방법
해결방법은 사례1과 같이 간단하게도, 클립보드를 지정하는 부분에 대한 버튼을 Flash로 구현하면 정상적으로 작동합니다.



사례3. Policy File

문제
두개 이상의 사이트에서 어느 한 사이트의 정보를 활용하기 위해 crossdomain.xml 정책을 사용하는경우, Flash Player 9에서는 정상적으로 정보를 받아왔지만, Flash Player 10에서 일부환경에서는 정보를 받아오는데 실패하거나 보안 샌드박스 오류가 발생하게 됩니다.


원인
Flash Player의 Policy file strictness Phase2의 보안샌드박스가 변경되었습니다.
Policy File
Flash 10에서는 meta-policy의 기본값이 all에서 master-only로 바뀝니다. 이 설정은 해당 swf파일이 존재하는 도메인 루트의 crossdomain.xml을 읽어옵니다. 그러나, meta-policy를 바꿔서 예전처럼 쓸수도 있습니다.
meta-policy의 all 속성은, 모든 곳에 위치한 policy-file를 허용하지만, master-only 속성은 파일이 위치한 도메인 루트의 crossdomain.xml을 읽어오게 됩니다. meta-policy의 속성값은 아래링크를 참조하시기 바랍니다.
(참조)


해결방법
Policy File의 meta-policy의 기본 설정이 master-only로 변경되지만, crossdomain.xml의 값을 설정하여 기존 all 을 그대로 사용할 수 있습니다.
<cross-domain-policy>
     <site-control permitted-cross-domain-policies="all"/>
</cross-domain-policy>




아직, Flash Player 10의 설치율이 낮은만큼, 미리미리 파악하시어 빠른시기 내로 해결될수 있길 바랍니다.
유익한 정보가 되길 바랍니다. 감사합니다.
신고
Trackback 3 댓글 0

[FP10] FileReference는 어떻게 달라졌을까?

안녕하세요 : )

정말 오랫만에 글을 남기는것 같죠? 이녀석 예전처럼 게을러진거아냐? ㅋㅋ 라고 생각하셨던 분들도 계셨을것 같은데, 사실 이런 무시무시한 경고때문에, 글을 차곡차곡써가면서 여러분께 공개는 하지 못하고 있었습니다... (흑흑)

'임금님귀는 당나귀 귀' 라고 아무리 좋고 재미있는 얘기더라도, 떠들고 다니기 좋아하는 저로써는 입이 간질간질해서 참지못할 지경이더군요... ㅠㅠ

그래도! 16일부터는 여러분들과 함께, FP10에선 어떤 API들이 추가되었고, 어떤 변화사항이 있는지, 다루어 볼수 있게되어, 매우 즐겁게 생각하고 있습니다.

앞으로도 제 블로그에 계속 연재할 예정이니, 많이 많이 찾아주세요..
(방문자 늘리기 작전인가 -_-;;)
Flash Player10이 출시된 만큼 여러분께 유익한 정보가 될수 있었으면.... 합니다!

자 그럼 오늘의 주제인 Filerefrence는 어떻게 달라졌을까요?
우선, FileReference API에 대해 소개하자면, 이 API는 로컬의 파일을 접근하고, 업로드 하거나 다운로드 하는데 사용되는 API입니다.


변경사항

Flash Player10에서 FileReference의 변경사항입니다.

1. 사용자의 로컬 파일에 접근이 가능합니다(load(), save() 메서드 추가)
2. 보안샌드박스의 변경사항이 있습니다.

일단 제일 눈에 띄는게 사용자의 로컬 파일에 접근이 가능하다?! 는 점인데, "어라? 그럼 로컬 파일들을 불러올수 있다는건가요? 어디까지 접근할수 있나요?" 라고 궁금해 하시는분들이 많으실것 같습니다. 그 내용은 아래에서 ㅋ


load(), save() 메서드

Filerefrence에는 load(), save()라는 메서드가 추가되었습니다.  두 메서드는 로컬파일에 접근하여, 파일을 읽거나 쓰는데 활용할 수 있습니다.

근데, '어? 파일을 읽고 쓰고 하면 사용자의 컴퓨터에 위해를 줄수 있지 않나요' 라고 생각하시는 분들이 많으실것 같습니다.

하지만 load(). save() 메서드의 경우 다이렉트로 호출할수 없으며, 사용자가 browse창에서 직접 파일은 선택해야 호출할수 있는 메서드 입니다.


위의 소스코드는 파일을 불러오는(load) 예입니다. 파일을 선택하고(browse), 파일을 불러오는(load) 구조로 로컬 파일에 접근할 수 있습니다.
load() 메서드의 경우 파일의 경로 지정없이 바로 메서드로 호출하게 되며, 파일의 스트림, 파일명, 파일크기등의 자료는 이벤트 데이터로 불러올 수 있습니다.


위의 소스코드는 파일을 저장하는(save) 예입니다.
save() 메서드의 경우 파라미터에 저장될 파일의 내용, 파일의 이름을 지정하게 되면, 자동으로 browse 창이 뜨게 됩니다.
한가지 주의할점은, 기존 파일에 중복해서 저장하게 될경우 ioerror가 발생하게 됩니다.


보안샌드박스

Flash Player10에서 기존 Filerefrence와, 또 새로 추가되는 매서드에 대한 보안 샌드박스가 강화되어 적용되었습니다.

파일선택과 다운로드시 사용자의 직접적인 인터렉션을 필요로 합니다.
Filerefrence.browse를 통해 사용자의 로컬의 파일을 찾는 창을 띄울수 있고, Filerefrence.download를 통해 파일을 내려 받을수 있습니다.
두 메서드의 경우 종전엔 사용자의 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.

로컬파일을 불러오고 저장할때 사용자의 직접적인 인터렉션을 필요로 합니다.
Flash 10에서는 SWF파일에서 사용자 로컬의 파일을 읽어오고 또 저장할 수 있습니다. 다만, 이 메서드들은 사용자가 파일 선택창에서 직접 파일이나 경로를 선택할때만 가능합니다.

따라서, 현재 UI를 HTML로 꾸며놓고, 플래시와 JS의 통신으로 파일 업로드가 구현되어있는 티스토리나, 기타 사이트들은 사용자의 직접적인 UI인터렉션으로 browse()메서드가 호출되지 않았기 때문에, 샌드박스 오류가 발생하게 됩니다.

Flash Player10이 출시된 만큼, 보안샌드박스의 변화를 빨리 파악해서, 사용자가 불편을 입지 않도록 신속히 대응하는것이 좋겠습니다.



기대분야

1. 이미지 편집기

많은 디지털 멀티미디어 기기가 보편화 되고, 또 1인미디어가 대중화됨에 따라, 웹에서 이런 멀티미디어 자료들을 손쉽게 편집할수 있는것에 대한 사용자의 요구가 날로 늘어갔습니다.

대부분의 업체는, 이를 해결하기 위해 Active X방식으로 이미지 편집기를 만들어 제공해 왔으나, Active X방식의 애플리케이션은 크로싱 플랫폼을 지원하지 않는다는 단점이 있습니다.

그래서 이를 해결하기 위해, 플래시를 통한 이미지 편집기가 스타플(http://starpl.com), 싸이월드 블로그(http://cyworld.com)에서 개발되어 사용중입니다.
 

다만, 현재까지의 flash의 Filerefrence는 파일을 선택하고, 그 파일을 업로드하거나, 다운로드 하는데에 한정되어 있었습니다.

따라서 이미지를 편집하기전 해당 이미지를 불러오기 위해, 임시 서버에 업로드 해 두고, 업로드된 주소를 플래시 상에 불러와서 작업을 해야 합니다.

이 방법의 경우, 불필요한 자원을 추가로 낭비한다는 문제점도 있지만, 최근 대부분의 멀티미디어 화상 이미지가 고 해상화 됨에 따라 파일 용량이 커지고, 또 해외지역이나 네트워크 지역이 느린 환경에선 업로드와 또 플래시에서 이미지로 불러오는데 상당한 시간 지연이 발생하게 됩니다.

하지만 Flash 10의 Filerefrence에는 load() 메서드가 추가되어 데스크탑 내의 로컬 자원에도 엑세스 할 수 있습니다. 따라서, 불필요한 자원을 낭비할 일이 줄게 되며, 또 고 해상도의 이미지를 처리하거나, 네트워크 환경이 느린 사용자에서도 지연 없이 빠르게 이미지를 불러올수 있습니다.

또, "Flash에서는 로컬 자원만 불러와 이미지 편집→서버업로드"로 프로그램의 구조적 장점도 얻을수 있습니다.


2. 대용량 파일의 안정적 전송

보통 로컬에 있는 파일을 플래시로 서버에 전송할때엔, Filerefrence의 upload는 HTTP를 통해 전송하게 됩니다.
작은 용량일 경우엔 HTTP로의 전송은 큰 무리가 없지만, 대용량 파일의 경우, 해당 서버에 과부화가 발생하거나, 중간에 연결이 끊기는 등의 문제가 발생할 수 있습니다.

그래서 대부분의 메일 서비스의 경우에도, 5mb이내의 작은 용량의 전송은 HTTP로 전송하지만, 대용량의 파일전송은 안정적인 서버와의 연결이 중요하기 때문에, Active X 컨트롤을 설치해 서버로 보내고 있습니다.

이 방법을 Flash에서 활용을 해보면 어떨까요?

이전의 Flash Player의 경우, 사용자가 파일을 선택하고, 업로드하고, 다운로드 받는등 아주 작은 부분에 대한 관여만 가능했지만, 이젠 로컬의 파일을 직접 불러와서 엑세스 할 수 있습니다.

또 Flash에서는 서버와 Socket을 주고 받을수 있는데 우리가 흔히 대용량 파일전송에 사용하는 FTP도 Socket를 통해 연결하게 됩니다.

따라서 FTP의 Socekt에 접근해서(policy-file을 설정하고, port도 1024이상으로 설정하고), 파일의 스트림을 FTP로 보내면 대용량 파일을 좀더 안정적인 전송하는게 가능하지 않을까요?


이외의 여러분들의 깜짝 놀랄만한 아이디어, 그리고 의견, 질문사항은 댓글로 남겨주세요!
신고
Trackback 2 댓글 1

Flash Player10 보안샌드박스

Flash Player 10(astro)의 베타버전이 공개된지 엊그제 같은데, 지난달 Adobe CS4출시와 곧 있을 Flex 3.2 출시로 Flash Player 10의 정식 출시가 초읽기로 다가왔습니다. 

올 4월 Flash Player9의 ExternalInterface와 NavigateToURL의 보안샌드박스 적용등으로 엄청난 충격을 받은적이 있었는데, 이번 Flash Player10에서도 역시 보안샌드박스가 변경되거나 추가되었습니다. ㅎㄷㄷㄷ 

엄청난 고생길이....... 눈앞에 선하군요.......
 

1. 변경된 사항 

1. Policy File
Flash 10에서는 meta-policy의 기본값이 all에서 master-only로 바뀝니다. 이 설정은 해당 swf파일이 존재하는 도메인 루트의 crossdomain.xml을 읽어옵니다. 그러나, meta-policy를 바꿔서 예전처럼 쓸수도 있습니다.

2. 소켓 타임아웃
액션스크립트에서 Socket, XMLSocket의 모든 securityError이벤트는 connect()메서드의 호출 이후 일정시간 경과후 발생하게 됩니다. 이것은 송출 이후 즉각적인 securityError가 더 늦게 발생하게 되며, 또한 더 일찍 연결에 성공하게되면 securityError 이벤트는 긴 딜레이가 발생하게 됩니다. 그래서, 20초의 소켓 타임아웃을 정해 두었습니다. 물론, 개발자들은 Socket.timeout과 XMLSocket.timeout를 통해서 이 시간을 조정할 수 있습니다.

3. 파일선택과 다운로드시 사용자의 직접적인 인터렉션을 필요로 합니다.
Filerefrence.browse를 통해 사용자의 로컬의 파일을 찾는 창을 띄울수 있고, Filerefrence.download를 통해 파일을 내려 받을수 있습니다.
두 메서드의 경우 종전엔 사용자의 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.

4. 클립보드를 지정할시 사용자의 직접적인 인터렉션을 필요로 합니다.
System.setClipboard를 통해 사용자의 클립보드에 텍스트를 지정할 수 있습니다. 종전엔 사용자의 직접적인 UI 인터렉션을 필요로 하지 않았습니다만, Flash 10에서는 사용자가 직접 UI인터렉션을 취해야 작동하게 됩니다.

 

2. 추가된 사항

1. 로컬파일을 불러오고 저장할때
Flash 10에서는 SWF파일에서 사용자 로컬의 파일을 읽어오고 또 저장할 수 있습니다. 다만, 이 메서드들은 사용자가 파일 선택창에서 직접 파일이나 경로를 선택할때만 가능합니다.

2. 풀스크린 모드에서 제한적으로 입력허용
근래의 플래시 플레이어에서는 풀스크린 모드에서는 입력이 허용되지 않았습니다. 하지만 Flash 10에서는 탭, 스페이스, 방향키의 사용이 허용됩니다.

3. RTMFP
플래시 플레이어와 플래시 미디어서버간의 통신에 UDP기반의 RTMFP를 지원합니다.

4. Paste event handler를 통한 클립보드 데이터 핸들링
Flash 9에서는 시스템 클립보드의 데이터를 불러오지 못했습니다. Flash 10에서는 새롭게 추가된 Clipboard.generalClipboard.getData() 메서드를 통해 시스템 클립보드의 데이터를 읽어올수 있습니다. 다만, flash.events.Event.PASTE 이벤트가 발생할때에만 불러올수 있습니다 -_-;;;;

링크 : http://www.adobe.com/devnet/flashplayer/articles/fplayer10_security_changes.html#head5 

특히 제일 주목이 되는것은, UI인터렉션 후 클립보드 저장이나, 파일 창띄우기, 다운로드가 가능하다는 점인데, 현재 많은 개발자들이 쓰고있는 꼼수가 대부분 새로운 샌드박스의 영향으로 막히게 되어버립니다.

예를들어, 클립보드 복사의 경우, JS로 처리할때 IE외의 브라우저는 제대로 처리되지 않는 문제가 있습니다. 이 문제를 해결하기위해, flash의 setClipboard를 쓰는데, 대부분의 경우 UI는 HTML상에서 구현하고, JS로 Flash내부의 함수를 호출해 처리하는 방법이 있는데, 이 방법이 사용이 불가능해집니다.
(사용자의 직접적인 UI인터렉션이 발생하지 않음으로)

필자의 경우 Yezzang&Naru이미지호스팅(http://img.yezzang.net)를 운영하고 있습니다. 이미지를 업로드 하게 될경우, 업로드된 이미지 주소를 받아와 자동으로 클립보드에 담기게 하는데, 이 부분에 있어서 수정을 해야할것 같습니다.. 흑흑 (ㅠㅠ)

역시 개발자에겐 야근은 기본 스펙이 되어버리는군요..

신고
Trackback 3 Comment 6
prev 1 next