Flex SDK를 사용하여 첫 번째 Android용 AIR 응용 프로그램 만들기

시작하려면 AIR 및 Flex SDK가 설치 및 설정되어 있어야 합니다. 이 자습서에서는 Flex SDK 및 ADL( AIR Debug Launcher )의 AMXMLC 그리고 AIR SDK의 ADT( AIR Developer Tool )를 사용합니다. Flex SDK 설정 을 참조하십시오.

또한 Android 개발자: SDK 설치 에 설명된 대로 Android 웹 사이트에서 Android SDK를 다운로드하여 설치해야 합니다.

참고: iPhone 개발에 대한 자세한 내용은 Flash Professional CS5를 사용하여 Hello World iPhone 응용 프로그램 만들기 를 참조하십시오.

AIR 응용 프로그램 설명자 파일 만들기

이 단원에서는 응용 프로그램 설명자를 만드는 방법을 설명합니다. 응용 프로그램 설명자는 다음과 같은 구조를 갖는 XML 파일입니다.

<application xmlns="..."> 
    <id>...</id> 
    <versionNumber>...</versionNumber> 
    <filename>…</filename> 
    <initialWindow> 
        <content>…</content> 
    </initialWindow> 
    <supportedProfiles>...</supportedProfiles> 
</application>
  1. HelloWorld-app.xml 이라는 XML 파일을 만들어 프로젝트 디렉토리에 저장합니다.

  2. AIR 네임스페이스 특성을 포함하여 <application> 요소를 추가합니다.

    <application xmlns="http://ns.adobe.com/air/application/2.7"> 네임스페이스의 마지막 세그먼트인 "2.7"은 응용 프로그램에 필요한 런타임의 버전을 지정합니다.

  3. <id> 요소를 추가합니다.

    <id>samples.android.HelloWorld</id> 응용 프로그램 ID는 제작자 ID(응용 프로그램 패키지에 서명하는 데 사용된 인증서에서 파생됨)와 함께 응용 프로그램을 고유하게 식별합니다. 권장되는 형식은 "com.company.AppName" 과 같이 DNS 스타일과 반대 방향인, 점으로 구분된 문자열입니다.

  4. <versionNumber> 요소를 추가합니다.

    <versionNumber>0.0.1</versionNumber> 사용자에게 설치하는 응용 프로그램의 버전을 알려 줍니다.

  5. <filename> 요소를 추가합니다.

    <filename>HelloWorld</filename> 응용 프로그램 실행 파일, 설치 디렉토리 및 운영 체제의 참조와 유사한 항목에 사용되는 이름입니다.

  6. 초기 응용 프로그램 윈도우의 속성을 지정하는 다음과 같은 자식 요소를 포함하는 <initialWindow> 요소를 추가합니다.

    <content>HelloWorld.swf</content> AIR에서 로드할 루트 HTML 파일을 식별합니다.

  7. <supportedProfiles> 요소를 추가합니다.

    <supportedProfiles>mobileDevice</supportedProfiles> 응용 프로그램이 모바일 프로파일에서만 실행된다는 것을 지정합니다.

  8. 파일을 저장합니다. 전체 응용 프로그램 설명자 파일은 다음과 같은 형태가 됩니다.

    <?xml version="1.0" encoding="UTF-8"?> 
    <application xmlns="http://ns.adobe.com/air/application/2.7"> 
        <id>samples.android.HelloWorld</id> 
        <versionNumber>0.0.1</versionNumber> 
        <filename>HelloWorld</filename> 
        <initialWindow> 
            <content>HelloWorld.swf</content> 
        </initialWindow> 
        <supportedProfiles>mobileDevice</supportedProfiles> 
    </application>

이 예제에서는 사용 가능한 응용 프로그램 속성 중 일부만 설정합니다. 응용 프로그램 설명자 파일에서 사용할 수 있는 다른 설정도 있습니다. 예를 들어 <fullScreen>true</fullScreen>를 initialWindow 요소에 추가하여 전체 화면 응용 프로그램을 만들 수 있습니다. Android에서 원격 디버깅 및 액세스 제어된 기능을 사용하려면 응용 프로그램 설명자에 Android 권한도 추가해야 합니다. 이 간단한 응용 프로그램에서는 권한이 필요하지 않기 때문에 지금은 추가할 필요가 없습니다.

자세한 내용은 모바일 응용 프로그램 속성 설정 을 참조하십시오.

응용 프로그램 코드 작성

HelloWorld.as라는 파일을 만들고 텍스트 편집기를 사용하여 다음 코드를 추가합니다.

package 
{ 
    import flash.display.Sprite; 
    import flash.text.TextField; 
     
    public class HelloWorld extends Sprite 
    { 
        public function HelloWorld() 
        { 
            var textField:TextField = new TextField(); 
            textField.text = "Hello, World!"; 
            stage.addChild( textField ); 
        } 
    } 
}

응용 프로그램 컴파일

응용 프로그램을 실행하고 디버깅하려면 먼저 amxmlc 컴파일러를 사용하여 MXML 코드를 SWF 파일로 컴파일하십시오. amxmlc 컴파일러는 Flex SDK의 bin 디렉토리에서 찾을 수 있습니다. 필요한 경우 컴퓨터의 경로 환경을 Flex SDK bin 디렉토리를 포함하도록 설정할 수 있습니다. 경로를 설정하면 명령줄에서 유틸리티를 더 쉽게 실행할 수 있습니다.

  1. 명령 셸 또는 터미널을 열고 AIR 응용 프로그램의 프로젝트 폴더로 이동합니다.

  2. 다음 명령을 입력합니다.

    amxmlc HelloWorld.as 

amxmlc 를 실행하면 HelloWorld.swf 가 생성되며, 응용 프로그램의 컴파일된 코드가 이 파일에 포함됩니다.

참고: 응용 프로그램이 컴파일되지 않을 경우 구문 오류나 맞춤법 오류를 수정하십시오. amxmlc 컴파일러를 실행하는 데 사용되는 콘솔 윈도우에 오류 및 경고가 표시됩니다.

자세한 내용은 AIR용 MXML 및 ActionScript 소스 파일 컴파일 을 참조하십시오.

응용 프로그램 테스트

명령줄에서 응용 프로그램을 실행하고 테스트하려면 ADL(AIR Debug Launcher)을 사용하여 해당 응용 프로그램 설명자 파일을 통해 응용 프로그램을 시작합니다. ADL은 AIR 및 Flex SDK의 bin 디렉토리에서 찾을 수 있습니다.

명령 프롬프트에서 다음 명령을 입력합니다.
adl HelloWorld-app.xml 

자세한 내용은 ADL을 사용하는 장치 시뮬레이션 을 참조하십시오.

APK 패키지 파일 만들기

응용 프로그램이 성공적으로 실행되면 ADT 유틸리티를 사용하여 응용 프로그램을 APK 패키지 파일로 패키지화할 수 있습니다. APK 패키지 파일은 사용자에게 배포할 수 있는 기본 Android 응용 프로그램 파일 포맷입니다.

모든 Android 응용 프로그램에는 서명이 필요합니다. AIR 파일과 달리 관례적으로 자체 서명된 인증서를 사용하여 Android 응용 프로그램에 서명합니다. Android 운영 체제는 응용 프로그램 개발자의 ID를 설정하려고 시도하지 않습니다. ADT에서 생성된 인증서를 사용하여 Android 패키지에 서명할 수 있습니다. Android Market에 전송된 응용 프로그램에 사용된 인증서는 유효 기간이 적어도 25년이어야 합니다.

자체 서명 인증서 및 키 쌍 생성

명령 프롬프트에서 다음 명령을 입력합니다. ADT 실행 파일은 Flex SDK의 bin 디렉토리에서 찾을 수 있습니다.
adt -certificate -validityPeriod 25 -cn SelfSigned 1024-RSA sampleCert.pfx samplePassword

이 예제에서는 인증서에 설정할 수 있는 최소한의 특성만 사용합니다. 키 유형은 1024-RSA 또는 2048-RSA 여야 합니다( ADT certificate 명령 참조).

AIR 패키지 만들기

명령 프롬프트에서 다음 명령을 한 줄에 입력합니다.
adt -package -target apk -storetype pkcs12 -keystore sampleCert.p12 HelloWorld.apk HelloWorld-app.xml HelloWorld.swf

키 저장소 파일의 암호를 입력하라는 메시지가 나타납니다. 암호를 입력하고 Enter 키를 누릅니다.

자세한 내용은 모바일 AIR 응용 프로그램 패키지화 를 참조하십시오.

AIR 런타임 설치

Android Market으로부터 최신 버전의 AIR 런타임을 장치에 설치할 수 있습니다. SDK에 포함된 런타임을 장치 또는 Android 에뮬레이터에 설치할 수도 있습니다.

명령 프롬프트에서 다음 명령을 한 줄에 입력합니다.
adt -installRuntime -platform android -platformsdk

-platformsdk 플래그를 Android SDK 디렉토리에 설정합니다(tools 폴더의 부모 지정).

ADT가 SDK에 들어 있는 Runtime.apk를 설치합니다.

자세한 내용은 개발용 AIR 런타임 및 응용 프로그램 설치 를 참조하십시오.

AIR 응용 프로그램 설치

명령 프롬프트에서 다음 명령을 한 줄에 입력합니다.
adt -installApp -platform android -platformsdk path-to-android-sdk -package path-to-app

-platformsdk 플래그를 Android SDK 디렉토리에 설정합니다(tools 폴더의 부모 지정).

자세한 내용은 개발용 AIR 런타임 및 응용 프로그램 설치 를 참조하십시오.

장치 또는 에뮬레이터의 스크린에서 응용 프로그램 아이콘을 눌러서 응용 프로그램을 실행할 수 있습니다.