정보
요청한 주제가 아래에 표시됩니다. 그러나 이 주제는 이 라이브러리에 포함되지 않습니다.

Windows Phone 8의 앱을 배포 및 실행하는 방법

2014-06-18

이 항목에서는 Windows Phone 에뮬레이터나 개발 컴퓨터에 연결된 Windows Phone 단말기에서 앱을 배포하고 실행하는 방법을 설명합니다.

Windows Phone 앱을 개발하는 경우 Windows Phone 에뮬레이터를 사용하여 신속하게 앱을 배포하고 테스트할 수 있습니다. 그러나 Windows Phone 에 앱을 게시하기 전에 실제 Windows Phone 스토어 단말기에서 테스트하는 것이 좋습니다. 그러면 사용자와 같은 환경에서 앱을 사용해 볼 수 있습니다.

실제 상황에서 앱의 동작을 테스트하는 방법은 Windows Phone의 시뮬레이션 대시보드를 참조하세요. 디버깅에 대한 일반적인 내용은 Windows Phone 8의 앱 디버깅을 참조하세요.

이 항목에는 다음 단원이 포함되어 있습니다.

 

Windows Phone 에뮬레이터에서 Windows Phone 앱을 처음 실행하는 경우 다음 이벤트가 발생합니다.

  1. 에뮬레이터가 시작됩니다.

  2. 에뮬레이터가 Windows Phone 운영 체제를 로드합니다.

  3. 에뮬레이터에 Windows Phone 시작 화면이 표시됩니다.

  4. 앱이 에뮬레이터에 배포됩니다

  5. 에뮬레이터에서 앱이 실행됩니다.

선택한 Windows Phone 에뮬레이터가 이미 실행되고 있는 경우 실행 중인 에뮬레이터에 앱이 배포되고 시작됩니다. 한 번에 각 에뮬레이터의 한 인스턴스만 실행할 수 있습니다.

팁팁:

에뮬레이터에서 앱을 테스트할 때 디버깅 세션 사이에 에뮬레이터를 열어 두면 앱을 다시 빠르게 실행할 수 있습니다.

앱을 Windows Phone 단말기에 배포하기 전에 다음 필수 구성 요소를 충족해야 합니다.

  • 등록된 개발자여야 합니다. 개발자로 등록하는 방법에 대한 자세한 내용은 등록 정보를 참조하세요.

  • 휴대폰을 등록해야 합니다. 자세한 내용은 개발을 위한 휴대폰 등록 방법을 참조하세요.

  • 휴대폰을 USB 케이블로 호스트 컴퓨터에 연결하고, 켜고, 화면 잠금을 해제해야 합니다.

  • Windows Phone 8 단말기에서 앱을 테스트하려면

    • Windows Phone IP over USB Transport 서비스가 실행되고 있어야 합니다. Windows Phone SDK 8.0 을 설치할 때 이 서비스가 설치되고 시작됩니다.

    • 연결된 단말기를 컴퓨터가 인식해야 합니다. Windows Phone 8 휴대폰은 파일 탐색기에 드라이브로 표시됩니다.

  • Windows Phone OS 7.1 단말기에서 앱을 테스트하려면

    • Zune 소프트웨어가 호스트 컴퓨터에 설치되어 있어야 합니다. Zune 소프트웨어를 다운로드하여 설치하려면 Zune 소프트웨어 다운로드 페이지로 이동하세요.

    • Zune 소프트웨어가 실행되고 있어야 합니다. 휴대폰을 호스트 컴퓨터에 연결하면 Zune이 자동으로 시작됩니다. Zune이 시작되지 않으면 수동으로 시작합니다.

    • 연결된 단말기를 Zune 소프트웨어가 인식해야 합니다.

앱 배포 문제를 해결하려면 이 항목의 휴대폰에 대한 앱 배포 문제 해결 섹션을 참조하세요.

등록된 단말기에 최대 10개 앱을 배포할 수 있습니다. 이 제한은 스토어 에서 설치하는 앱에 적용되지 않습니다.

Windows Phone OS 7.1 을 대상으로 지정하는 기존 앱이 있는 경우 Windows Phone 8 단말기에서 앱을 테스트하여 호환성을 확인하는 것이 좋습니다. 가능한 문제에 대한 자세한 내용은 Windows Phone 8의 앱 플랫폼 호환성을 참조하세요.

Visual Studio에서 앱을 배포 및 실행하려면

  1. 연결된 단말기에 앱을 배포하는 경우에는 이 항목의 앞부분에서 나열한 필수 구성 요소를 충족했는지 확인합니다.

  2. Visual Studio에서 Windows Phone 프로젝트를 엽니다.

  3. 표준 도구 모음에서 대상을 선택합니다.

    • 앱을 에뮬레이터에 배포하려면 에뮬레이터 옵션 중 하나를 선택합니다.

    • 앱을 연결된 단말기에 배포하려면 단말기 옵션을 선택합니다.

    Target on Standard Toolbar selecting emulator
  4. 앱을 디버깅하고 배포 및 실행하려면 디버그 메뉴에서 디버깅 시작을 클릭하거나 F5 키를 누릅니다.

    앱을 디버깅하지 않고 배포 및 실행하려면 디버그 메뉴에서 디버깅하지 않고 시작을 클릭하거나 Ctrl+F5를 누릅니다.

    앱이 배포되고 시작됩니다.

    앱을 실행하지 않고 배포하려면 빌드 메뉴에서 솔루션 배포를 클릭합니다.

앱의 실행을 중지하려면

  • 앱의 실행을 중지하려면 다음 중 하나를 수행합니다.

    • Visual Studio의 디버그 메뉴에서 디버깅 중지를 클릭하거나 Shift+F5를 누릅니다.

    • 에뮬레이터나 휴대폰에서 뒤로 버튼을 눌러 앱을 종료합니다. 앱의 활성 페이지가 앱의 시작 페이지가 아닌 경우 뒤로 버튼을 두 번 이상 클릭해야 할 수 있습니다.

    앱이 종료되고 시작 화면이 열립니다. 그러면 현재 디버깅 세션이 종료됩니다.

디버깅하지 않고 앱을 다시 시작하려면

  1. 에뮬레이터나 휴대폰의 시작 화면에서 왼쪽으로 살짝 밀어 앱 목록을 봅니다.

  2. 앱 목록에서 앱 아이콘을 탭합니다. 디버깅 없이 앱이 다시 시작됩니다.

실행 중인 앱을 비활성화하려면

  1. 앱을 실행하기 전에 Visual Studio의 솔루션 탐색기에서 프로젝트를 마우스 오른쪽 버튼으로 클릭한 다음 속성을 선택하여 프로젝트 디자이너를 엽니다.

  2. 비활성화 시 앱을 유휴 상태로 전환하려면 프로젝트 디자이너디버그 페이지에서 디버깅하는 동안 비활성화 시 삭제 표시 확인란을 선택 취소합니다. 비활성화 시 앱을 삭제 표시 상태로 전환하려면 이 확인란을 선택합니다.

  3. 디버그 메뉴에서 디버깅 시작을 클릭하거나 F5 키를 눌러 앱을 실행합니다.

  4. 에뮬레이터나 휴대폰에서 시작 버튼을 누릅니다. 시작 화면이 나타나고 앱이 비활성화됩니다. 디버깅하는 동안 비활성화 시 삭제 표시 확인란의 설정에 따라 앱에 삭제 표시가 지정되거나 앱이 유휴 상태로 전환됩니다.

삭제 표시가 지정된 앱이나 유휴 상태 앱을 다시 활성화하려면

  • 에뮬레이터나 휴대폰에서 뒤로 버튼을 클릭하여 앱으로 돌아갑니다. 다른 페이지를 탐색하거나 다른 앱을 연 경우 앱을 다시 활성화하기 위해 뒤로 버튼을 여러 번 눌러야 할 수도 있습니다.

    디버깅 세션이 계속됩니다. 디버거가 앱에서 분리된 경우 디버깅 세션을 계속하려면 F5 키를 눌러야 할 수도 있습니다. 디버깅 및 다시 활성화에 대한 자세한 내용은 Windows Phone에 대한 앱 상태 변경을 테스트하는 방법를 참조하세요.

Windows Phone 응용프로그램 배포 도구(XapDeploy.exe)를 사용하여 앱을 배포할 수도 있습니다. 이 도구는 Windows Phone SDK 를 설치할 때 설치되는 독립 실행형 앱입니다.

  • Windows Phone OS 8.0 또는 Windows Phone OS 7.1 폴더에 설치된 응용프로그램 배포 도구 버전을 사용하여 C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\XAP Deployment을 대상으로 하는 앱을 배포할 수 있습니다.

  • C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v7.1\Tools\XAP Deployment 폴더에 설치된 응용프로그램 배포 도구 버전을 사용하여 Windows Phone OS 7.1 을 대상으로 하는 앱을 배포할 수 있습니다.

응용프로그램 배포 도구를 사용하여 앱을 배포하려면

  1. 앱을 빌드합니다. 자세한 내용은 Windows Phone 8의 앱을 빌드하는 방법을 참조하세요.

  2. 연결된 단말기에 앱을 배포하는 경우에는 이 항목의 앞부분에서 나열한 필수 구성 요소를 충족했는지 확인합니다.

  3. Windows 시작 화면에서 응용프로그램 배포 도구를 시작합니다. 응용프로그램 개발 도구를 찾으려면 모든 앱 보기를 열고 Windows Phone SDK 8.0 그룹에서 도구를 찾거나 시작 화면에서 응용프로그램 개발을 입력하여 검색합니다.

    다음 위치에서 도구를 실행할 수도 있습니다.

    C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\XAP Deployment\XapDeploy.exe

    다음 그림과 같이 응용프로그램 개발 도구가 시작됩니다.

    Options in the Application Deployment tool
  4. 대상 드롭다운 상자에서 단말기나 에뮬레이터 옵션 중 하나를 선택합니다.

  5. 찾아보기를 클릭하여 배포할 XAP 파일을 찾습니다.

  6. 배포를 클릭합니다.

    배포가 성공하면 상태 필드에 XAP 배포 완료가 표시됩니다.

명령줄 버전의 응용프로그램 배포 도구인 XapDeployCmd.exe를 사용하여 앱을 배포할 수도 있습니다. 스크립트나 사용자 지정 앱에서 이 도구를 호출하여 앱을 배포할 수 있습니다.

XapDeployCmd.exeC:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\XAP Deployment 폴더에 설치됩니다.

XapDeployCmd.exe에서는 새 앱을 실행하지 않고 배포하는 옵션을 제공하지 않습니다.

중요중요:

명령줄을 사용하여 Windows Phone 프로젝트를 배포하려면 Visual Studio 2012 업데이트 2가 필요합니다. XapDeployCmd.exe는 Windows Phone SDK 8.0 에서 설치하는 Visual Studio 2012 버전에 포함되어 있지 않습니다.

명령 프롬프트에서 앱을 배포하려면

  1. 앱을 빌드합니다. 자세한 내용은 Windows Phone 8의 앱을 빌드하는 방법을 참조하세요.

  2. 연결된 단말기에 앱을 배포하는 경우에는 이 항목의 앞부분에서 나열한 필수 구성 요소를 충족했는지 확인합니다.

  3. 명령 프롬프트 창을 엽니다. PATH 환경 변수에 XapDeployCmd.exe의 경로가 포함되지 않은 경우에는 C:\Program Files (x86)\Microsoft SDKs\Windows Phone\v8.0\Tools\XAP Deployment 폴더로 이동합니다.

  4. 다음 중 한 옵션을 사용하여 XapDeployCmd.exe를 실행합니다.

    • 에뮬레이터에 앱을 배포하려면 xd 옵션을 사용합니다.

    • 연결된 단말기에 앱을 배포하려면 de 옵션을 사용합니다.

명령줄 배포 구문 및 옵션

XapDeployCmd.exe에는 다음 구문이 있습니다.

XapDeployCmd.exe <cmd[:param]> <Product ID/Xap FileName> <targetdevice[:param]>

다음 표에서는 XapDeployCmd.exe의 명령줄 옵션을 설명합니다.

옵션

설명

<cmd[:param]>

명령을 실행하도록 지정합니다. 이 옵션에는 다음과 같은 값 중 하나가 지정됩니다.

옵션설명
/installlaunch단말기에서 앱을 설치하고 실행합니다. 이 옵션에는 Xap FileName 인수가 필요합니다.
/update단말기에 이미 설치된 앱을 업데이트합니다. 이 옵션에는 Xap FileName 인수가 필요합니다.
/launch단말기에 이미 설치된 앱을 실행합니다. 이 옵션에는 Product ID 인수가 필요합니다.
/uninstall단말기에서 앱을 제거합니다. 이 옵션에는 Product ID 인수가 필요합니다.
/EnumerateDevices올바른 단말기 대상과 각 단말기의 숫자 인덱스 목록을 표시합니다.

<Product ID>

앱의 GUID를 지정합니다. 이 값은 프로젝트의 앱 매니페스트 파일인 WMAppManifest.xml에서 찾을 수 있습니다.

<Xap FileName>

설치하거나 업데이트할 XAP의 전체 경로를 지정합니다.

</targetdevice[:param]>

대상 단말기를 지정입니다. 이 옵션에는 다음과 같은 값 중 하나가 지정됩니다.

설명
xd기본 에뮬레이터입니다.
de개발 컴퓨터에 연결된 Windows Phone 단말기입니다.
n단말기 목록의 인덱스 n에 있는 단말기입니다. 단말기 목록을 가져오려면 XapDeployCmd.exe /EnumerateDevices를 실행합니다.

명령줄 배포 예

다음은 명령줄 배포의 몇 가지 예입니다. 다음 예에서는 Product ID가 f8ce6878-0aeb-497f-bcf4-65be961d4bba이고 Xap FileName이 D:\PhoneApp1.xap인 경우를 가정합니다.

XapDeployCmd.exe /installlaunch D:\PhoneApp1.xap /targetdevice:xd

기본 에뮬레이터에 PhoneApp1을 설치한 다음 실행합니다.

XapDeployCmd.exe /launch f8ce6878-0aeb-497f-bcf4-65be961d4bba /targetdevice:de

연결된 단말기에서 지정된 Product ID에 해당하는 앱을 실행합니다.

XapDeployCmd.exe /update D:\PhoneApp1.xap /targetdevice:2

단말기 인덱스 2에서 지정한 단말기에 이미 설치되어 있는 PhoneApp1을 설치합니다. 올바른 단말기 목록을 가져오려면 /EnumerateDevices 옵션을 사용합니다.

XapDeployCmd.exe /uninstall f8ce6878-0aeb-497f-bcf4-65be961d4bba /targetdevice:xd

기본 에뮬레이터에서 지정된 Product ID에 해당하는 앱을 제거합니다.

XapDeployCmd.exe /EnumerateDevices

올바른 단말기 대상과 각 단말기의 숫자 인덱스 목록을 열거합니다.

앱을 Windows Phone 8 휴대폰에 배포하는 것은 로컬 서비스인 Windows Phone IP over USB Transport(IpOverUsbSvc)에 따라 다릅니다. 또한 개발 컴퓨터에 휴대폰이 USB 단말기로서 올바로 설치되었는지 여부에도 달려 있습니다.

IpOverUsbSvc 서비스를 확인하여 연결 문제를 해결하려면

  1. 휴대폰을 USB 케이블로 개발 컴퓨터에 연결하고 휴대폰 전원을 켠 후 휴대폰 화면의 잠금을 해제합니다.

  2. 명령 프롬프트 창을 열고 IpOverUsbEnum 명령줄 도구를 실행합니다. 이 도구는 다음 폴더에 있습니다.

    C:\Program Files (x86)\Common Files\Microsoft Shared\Phone Tools\CoreCon\11.0\Bin

  3. 도구의 출력을 검사합니다.

    • 휴대폰과 휴대폰에서 실행 중인 서비스에 대한 정보 줄이 표시된다면 개발 문제는 IpOverUsb 서비스 문제가 아닐 수 있습니다.

    • RPC Server Unavailable. Is the proxy running?이라는 메시지가 표시되면 IpOverUsb 서비스가 실행되고 있지 않음을 의미합니다. 서비스 스냅인을 열고 Windows Phone IP over USB Transport IpOverUsbSvc) 서비스를 시작합니다.

    • No connected partners found라는 메시지가 표시되면 다음 사항을 확인합니다.

      • 휴대폰이 USB 케이블로 개발 컴퓨터에 연결되어 있습니까?

      • 휴대폰이 켜져 있습니까?

      • 휴대폰 화면의 잠금이 해제되어 있습니까?

      • 파일 탐색기에서 휴대폰이 컴퓨터 아래의 드라이브로 표시됩니까?

드라이버를 업데이트하여 연결 문제를 해결하려면

  1. 휴대폰을 USB 케이블로 개발 컴퓨터에 연결하고 휴대폰 화면의 잠금을 해제합니다.

  2. 장치 관리자를 엽니다. 휴대용 장치 아래에서, 휴대폰에 해당하는 항목을 찾습니다.

  3. 휴대폰 항목을 마우스 오른쪽 버튼으로 클릭하고 드라이버 소프트웨어 업데이트를 선택합니다. 다음 절차에 따라 드라이버를 업데이트합니다.

네트워킹 기능

앱을 Visual Studio 에서 에뮬레이터나 휴대폰에 배포하면 네트워크 기능이 자동으로 포함됩니다. 하지만 앱에 네트워킹이 필요한 경우 스토어 에 앱을 제출할 때는 여전히 앱의 매니페스트 파일에서 명시적으로 이 기능을 지정해야 합니다. 네트워킹 기능을 지정하지 않으면 앱을 사용자의 휴대폰에 설치했을 때 작동하지 않을 수 있습니다. 자세한 내용은 Windows Phone 8의 앱 기능 및 하드웨어 요구 사항을 참조하세요.

앱의 설치 디렉터리에 쓰기

앱을 Visual Studio 에서 에뮬레이터나 휴대폰에 배포하면 앱은 그 설치 디렉터리에 쓸 수 있습니다. 하지만 스토어 를 통해 배포 및 게시된 앱은 설치 디렉터리에 쓸 수 없습니다. 스토어 에서 설치된 앱이 설치 디렉터리에 대한 기록을 시도하면 예외가 발생합니다. 앱을 개발하고 테스트하는 동안 앱의 설치 폴더에 기록되는 앱에 코드를 포함한 경우에는 앱을 스토어 에 게시하기 전에 이 기능을 제거해야 합니다.

Windows Phone OS 7.1 미디어 API 테스트

연결된 단말기에서 Windows Phone OS 7.1 을 대상으로 하는 앱을 테스트할 경우 일반적으로 Zune 소프트웨어가 실행되고 있습니다. 하지만 Zune 소프트웨어가 실행 중인 동안 로컬 미디어 데이터베이스를 잠그기 때문에 미디어 API와 상호 작용하는 앱을 테스트할 수 없습니다. Windows Phone OS 7.1 을 대상으로 하는 앱을 테스트하고 미디어 API를 사용하려면 Windows Phone 연결 도구를 사용하여 Zune 소프트웨어를 실행하지 않고 단말기에 대한 직렬 또는 USB 연결을 설정할 수 있습니다. 자세한 내용은 Windows Phone에서 사진 선택기 또는 카메라 캡처 작업을 사용하는 앱을 테스트하는 방법을 참조하세요.

표시: