Flash/air

    Flash Player와 Air간의 작업

    모바일 AIR 앱을 만드는 와중에매번 apk로 패키징하여 모바일에 넣기 귀찮아서 로컬PC에서 html로 실행하여 Flash Player로 돌려보고 있었다.근데 AIR에 있는 소스가 Flash Player에는 없는 경우가 있다.런타임에서 해당 소스에 당도하게 되면 런타임 에러가 발생한다.이런 경우에는 해당 소스를 따로 함수에 빼놓고 호출하지 않으면 된다. 모바일 AIR앱을 로컬PC에서 손쉽게 돌려보는 좋은 방법이 없을까...

    File.applicationDirectory에 파일 Write 하기

    var file:File = File.applicationDirectory.resolvePath('경로1' + File.separator + '경로2'); this.fileStream.open(file, FileMode.WRITE); 를 하면 File Write하는데 에러가 발생한다. SecurityError: fileWriteResource at flash.filesystem::FileStream/open() 해결방법 var file:File = new File(File.applicationDirectory.nativePath + File.separator + '경로1' + File.separator + '경로2'); this.fileStream.open(file, FileMode.WRITE); 문제는..

    mp3파일 로드해서 로컬폴더에 생성 후 플레이하기

    package { import flash.display.Sprite; import flash.events.Event; import flash.filesystem.File; import flash.filesystem.FileMode; import flash.filesystem.FileStream; import flash.media.Sound; import flash.net.URLRequest; import flash.net.URLStream; import flash.utils.ByteArray; public class FileWriteTest extends Sprite { private var fileData:ByteArray = new ByteArray; private var sound:Sound; pu..

    removeChild의 문제점

    air에서는 removeChild를 하면 디스플레이 리스트에서 해제됨과 동시에 다른 일도 일어나는 것 같다. 무비클립 속에 모션이 들어있는데 모션이 완료되고 난 후 gotoAndStop(1)로 프레임을 돌려 놓은 후 removeChild를 하고 나서 다시 addChild를 하면 1프레임의 상황으로 돌아와 있지 않다. 1프레임에서는 빨간색이었던 것이 10프레임에서는 쉐입 모션으로 검정색으로 변했다면 removeChild후에 다시 gotoAndPlay(1)을 하면 검정색인 채로 모션이 일어난다. 플레이 헤드가 1로 가긴 가는데 검정색으로 변한 객체는 removeChild후에는 그 상태로 저장이 되어 addChild를 다시 한다면 저장된 상태로 다시 나오는 듯... 해결방법은 찾지 못했다. visible로 제..

    Air와 swf간에 LocalConnection으로 통신할 때 주의할 점

    LocalConnection을 이용하여 로컬 컴퓨터에서 Air와 swf간에 통신할 때는 채널명을 언더스코어(_)로 시작하여야 한다. 또 하나, LocalConnection.allowDomain()을 실행하여 보안 설정을 해주어야 한다. Air dev center에 나와있는 사항이고, 이거 하나때문에 통신 에러가 발생하게 된다. 웹 어플리케이션의 swf와 Air가 통신할 때는 좀 더 많은 사항이 요구된다.