2009-05-15 2 views
1

가능합니까? 플래시 9 또는 플래시 10을 설치 한 사용자가 볼 수있는 주 swf를 갖고 싶습니다. 이 swf 내부에는 플래시 10이 설치된 사용자 만 별도의 모듈이로드됩니다. 이 모듈은 몇 가지 고급 플래시 10 기능을 사용합니다.Flash 10 용으로 컴파일 된 SWF로드 Flash 9 SWF

답변

1

물론이 내용은 설명 된대로 작동합니다. Flash 9에서 기본 SWF를 만들고 버전 확인을 수행하고 선택적으로 10으로 게시 된 다른 SWF에서로드합니다. Flash는로드 된 SWF의 버전에 관계없이 v10 SWF의 고급 기능을 렌더링합니다.

버전이 문자열로 반환되므로 반드시 parseInt을 수행해야합니다.

0

내가 플래시 애플리케이션을 개발하지 않지만 음 ...이 내 2 센트 때문에 긴 시간 :

당신은 10 메인 플래시를 컴파일 할 수 있으며,이 때문에의 문제가 될 수있다 업그레이드 경고.

이 가능한 해결 방법입니다 : http://codeofdoom.com/wordpress/2009/02/09/compiling-to-flash-10-requiring-flash-9/

그 일을하는 데, 나는 그것이 플래시 버전을 감지하고 당신이 말하는 것처럼 다른 SWF 모듈을로드 쉽게 생각합니다.

1

Flash 10 SWF에서 Flash 10 특정 라이브러리를 사용하려고하지 않는 한이 작업이 정상적으로 작동합니다. 방금 시도한 결과 Adobe는 Flash/Flex 라이브러리 디자인 및 품질에 실망했습니다. 예를 들어

, 난 사용자의 플래시 플레이어 10 이상 인 경우, 플래시 (10) 모듈을로드 플래시 9 기본 SWF가 다음

을하려고했다. 1) flash.net.NetStreamPlayOptions 2) flash.net.NetStreamPlayTransitions 3) 나는이 작업을 수행 할 때 NetStream.play2 불행하게도, Flash 런타임은 불평이 플래시 10 모듈처럼, 플래시 (10) 특정 라이브러리를 사용하여 종료 NetStreamPlayOptions, NetStreamPlayTransitions 및 NetStream.play2와 같은 것은 없습니다. 필자는 NetStreamPlayOptions 및 NetStreamPlayTransitions를 복제하여이 문제를 해결하기 위해 노력했지만, 불행하게도 NetStream 인스턴스를 Object로 캐스팅 한 경우에도 NetStream.play2를 호출 할 수 없었습니다.

Flash 9 인 기본 SWf는 Flash 9 용의 playerglobal.swc를 사용하기 때문에 이런 식으로 작동한다고 생각합니다. Flash 10 SWF를로드하면 Flash 9 playerglobal을 사용하여 여전히 끝납니다. swc Flash 10에서 환경을 초기화했기 때문에 Flash 10 SWF에서 문제가 발생합니다. 나는이 문제를 해결하는 방법을 아직 찾지 못했다.

플래시가 AS1 -> AS2 -> AS3으로 전환 할 때 왜 그것이 이전 버전과 호환되지 않았는지 이해가되었지만 이제는 AS3에서 항상 AS3을로드 할 수는 없습니다. 내 생각에 매우 실망 스럽습니다.