Flex 3로 Flash CS3용 SWC 라이브러리 만들기

아무래도 프로그래머에게는 Flash 보다는 Flex가 개발하기 편리한 것은 두말할 나위가 없다.
Flex 프레임워크와 이미 익숙하고도 강력한 이클립스 환경, 이클립스의 수많은 플러그인들 등등…

그래서, Flash에서 사용하고자하는 라이브러리도 Flex에서 작업하는것이 편리하다고 생각해 왔는데(실제 프로젝트가 없어서 생각만 해오고 있었다)…….

우리회사에서 외주를 준 플레시게임을 사이트에 도입하려다 보니….
각종 파라메터 암호화가 필요할 것 같아서, Flash와 서버사이트에서 호환되는 암호화 모듈 좀 달라고 했더니만,
그런 것 없다고 대답이 돌아왔다.
처음부터 그 업체의 기술력이나 경험이 상당히 문제라고 판단했는데… 아직도 저런 기본 개념자체의 수준미달 업체들이 있다는 사실에 또한번 좌절하게 된다… 아무리 플레시게임이라도 암호화 자체가 없다니.. –;;

뭐 하여간 그래서 시간도 없고 해서 내가 만들어 준다고 했다.
as3crypto (http://code.google.com/p/as3crypto/)를 기반으로 필요 없는것 다 버리고, 버그 수정하고, 입출력 알고리즘 변경하고해서 만들었다. 물론 동시에 웹어플리케이션용도 mcrypt 라이브러리를 이용해서 만들었다.

그런데.. 이 만들어 놓은 라이브러리를 Flash용 SWC파일로 만들어 외주업체쪽에 보내 주려고 했더니만….. 안되는 것 같았다. 급 검색을 해보니 그 짓을 해 본 사람이 별로 없는 것 같았다. –;;
그러나, 다행히 고맙게도 아래 두 문서가 있어서 그걸 바탕으로 SWF 만들기에 성공을 했다 !

http://timwalling.com/2007/10/22/compiling-flash-cs3-compatible-swcs-with-flex/
http://blog.thebum.net/107

0. 환경
Flex 3 + Flash CS3

1. Crypto.class 만들기
당연한 이야기이지만, Flex 3에서 라이브러리를 만들어야 한다.
가능하면 mx.* 패키지를 쓰지 않는것이 Flash CS3에서의 사용가능할 확률을 높여준다.

2. manifest.xml 파일 만들기
Flash CS3 라이브러리에 등록 되게 하기 위한 정보를 기록한다.
예제에서 “ProjectCrypt” 는 Flash CS3 라이브러리에서 보여질 명칭이며, “mycompany.project.crypto.Crypto”는 실제 Flex/Flash 에서 사용하는 클래스명이다.

3. compc 용 설정 파일(build.xml) 만들기

커맨드라인에 옵션을 적어도 되자만, 아무래도 설정파일을 만들어 두는게 여러모로 좋다.
Ant등 자동화 도구를 사용 할 경우에는 아래 내용을 바탕으로 각 설정파일을 만들면 된다.
아래 예제에서 와 가 일반 Flex용 swc 생성과 다른 부분이며, 나머지 부분은 만들고자하는 라이브러리에 맞게 수정하면 된다.

4. 컴파일 하기

5. Flash CS3 에서 사용하기

만들어진 ProjectCrypt.swc 파일을 “C:\Program Files\Adobe\Adobe Flash CS3\en\Configuration\Components” 에 복사해넣고 Flash CS3를 기동한다.
Component 패널에 추가된 ProjectCrypt 를 라이브러리에 추가하고 사용하면 된다.

이처럼 swc 형식으로 라이브러리를 배포한다면, 이번 경우처럼 외주 형식의 프로젝트나 디자이너(플레셔)와의 협업이 상당히 편리해 질 것 같다.

 


QR Code