Xamarin.iOS 개발을 위해 Mac에 페어링Pair to Mac for Xamarin.iOS development

이 가이드에서는 Mac에 페어링을 사용하여 Visual Studio 2019를 Mac 빌드 호스트에 연결하는 방법에 대해 설명합니다. Visual Studio 2017에도 동일한 지침이 적용됩니다.This guide describes how to use Pair to Mac to connect Visual Studio 2019 to a Mac build host. The same instructions apply to Visual Studio 2017.

개요Overview

네이티브 iOS 애플리케이션을 빌드하려면 Mac에서만 실행되는 Apple의 빌드 도구에 액세스해야 합니다.Building native iOS applications requires access to Apple's build tools, which only run on a Mac. 이에 따라 Visual Studio 2019에서 네트워크에 액세스할 수 있는 Mac에 연결하여 Xamarin.iOS 애플리케이션을 빌드해야 합니다.Because of this, Visual Studio 2019 must connect to a network-accessible Mac to build Xamarin.iOS applications.

Windows 기반 iOS 개발자가 생산적으로 작업할 수 있도록 Visual Studio 2019의 Mac에 페어링 기능은 Mac 빌드 호스트를 검색, 연결, 인증 및 기억합니다.Visual Studio 2019's Pair to Mac feature discovers, connects to, authenticates with, and remembers Mac build hosts so that Windows-based iOS developers can work productively.

Mac에 페어링을 사용하면 다음과 같은 개발 워크플로를 수행할 수 있습니다.Pair to Mac enables the following development workflow:

  • 개발자는 Visual Studio 2019에서 Xamarin.iOS 코드를 작성할 수 있습니다.Developers can write Xamarin.iOS code in Visual Studio 2019.

  • Visual Studio 2019는 Mac 빌드 호스트에 대한 네트워크 연결을 열고, 해당 머신의 빌드 도구를 사용하여 iOS 앱을 컴파일하고 서명합니다.Visual Studio 2019 opens a network connection to a Mac build host and uses the build tools on that machine to compile and sign the iOS app.

  • Mac에서 별도의 애플리케이션을 실행할 필요가 없습니다. Visual Studio 2017은 SSH를 통해 Mac 빌드를 안전하게 호출합니다.There is no need to run a separate application on the Mac – Visual Studio 2017 invokes Mac builds securely over SSH.

  • 변경이 발생하는 즉시 알림이 Visual Studio 2019로 보내집니다.Visual Studio 2019 is notified of changes as soon as they happen. 예를 들어 iOS 디바이스가 Mac에 연결되어 있거나 네트워크에서 사용할 수 있게 되면 iOS 도구 모음이 즉시 업데이트됩니다.For example, when an iOS device is plugged in to the Mac or becomes available on the network, the iOS Toolbar updates instantly.

  • Visual Studio 2019의 여러 인스턴스를 Mac에 동시에 연결할 수 있습니다.Multiple instances of Visual Studio 2019 can connect to the Mac simultaneously.

  • Windows 명령줄을 사용하여 iOS 애플리케이션을 빌드할 수 있습니다.It's possible to use the Windows command-line to build iOS applications.

참고

이 가이드의 지침을 수행하기 전에 먼저 다음 단계를 완료합니다.Before following the instructions in this guide, complete the following steps:

Mac용 Visual Studio를 설치하지 않으려는 경우 Visual Studio 2019는 Xamarin.iOS 및 Mono를 사용하여 Mac 빌드 호스트를 자동으로 구성할 수 있습니다.If you would prefer not to install Visual Studio for Mac, Visual Studio 2019 can automatically configure the Mac build host with Xamarin.iOS and Mono. 그래도 Xcode는 설치하고 실행해야 합니다.You must still install and run Xcode. 자세한 내용은 자동 Mac 프로비전을 참조하세요.For more information, see Automatic Mac provisioning.

Mac에서 원격 로그인을 사용하도록 설정Enable remote login on the Mac

Mac 빌드 호스트를 설정하려면 먼저 원격 로그인을 사용하도록 설정합니다.To set up the Mac build host, first enable remote login:

  1. Mac에서 [시스템 기본 설정]을 열고 공유 창으로 이동합니다.On the Mac, open System Preferences and go to the Sharing pane.

  2. 서비스 목록에서 원격 로그인을 선택합니다.Check Remote Login in the Service list.

    원격 로그인을 사용하도록 설정Enabling Remote Login

    모든 사용자에 대한 액세스를 허용하도록 구성되어 있거나 Mac 사용자 이름 또는 그룹이 허용된 사용자 목록에 포함되어 있는지 확인합니다.Make sure that it is configured to allow access for All users, or that your Mac username or group is included in the list of allowed users.

  3. 메시지가 표시되면 macOS 방화벽을 구성합니다.If prompted, configure the macOS firewall.

    들어오는 연결을 차단하도록 macOS 방화벽을 설정한 경우 mono-sgen에서 들어오는 연결을 받도록 허용해야 할 수도 있습니다.If you have set the macOS firewall to block incoming connections, you may need to allow mono-sgen to receive incoming connections. 이 경우 사용자에게 묻는 경고 메시지가 표시됩니다.An alert appears to prompt you if this is the case.

  4. Windows 머신과 동일한 네트워크에 있으면 이제 Visual Studio 2019에서 Mac을 검색할 수 있습니다.If it is on the same network as the Windows machine, the Mac should now be discoverable by Visual Studio 2019. Mac을 여전히 검색할 수 없는 경우 수동으로 Mac 추가를 시도하거나 문제 해결 가이드를 살펴보세요.If the Mac is still not discoverable, try manually adding a Mac or take a look at the troubleshooting guide.

Visual Studio 2019에서 Mac에 연결Connect to the Mac from Visual Studio 2019

원격 로그인을 사용하도록 설정되었으므로 Visual Studio 2019를 Mac에 연결합니다.Now that remote login is enabled, connect Visual Studio 2019 to the Mac.

  1. Visual Studio 2019에서 기존 iOS 프로젝트를 열거나, 파일 > 새로 만들기 > 프로젝트를 선택한 다음, iOS 프로젝트 템플릿을 선택하여 새 iOS 프로젝트를 만듭니다.In Visual Studio 2019, open an existing iOS project or create a new one by choosing File > New > Project and then selecting an iOS project template.

  2. Mac에 페어링 대화 상자를 엽니다.Open the Pair to Mac dialog.

    • iOS 도구 모음의 Mac에 페어링 단추를 사용합니다.Use the Pair to Mac button iOS toolbar:

      Mac에 페어링 단추가 강조 표시된 iOS 도구 모음The iOS toolbar, with the Pair to Mac button highlighted

    • 또는 도구 > iOS > Mac에 페어링을 차례로 선택합니다.Or, select Tools > iOS > Pair to Mac.

    • Mac에 페어링 대화 상자에는 이전에 연결되어 있거나 현재 사용할 수 있는 Mac 빌드 호스트의 목록이 모두 표시됩니다.The Pair to Mac dialog displays a list of all previously-connected and currently-available Mac build hosts:

      Mac에 페어링 대화 상자The Pair to Mac dialog

  3. 목록에서 Mac을 선택합니다.Select a Mac in the list. 연결을 클릭합니다.Click Connect.

  4. 사용자 이름과 암호를 입력합니다.Enter your username and password.

    • 특정 Mac에 처음 연결하면 해당 컴퓨터에 대한 사용자 이름과 암호를 입력하라는 메시지가 표시됩니다.The first time you connect to any paticular Mac, you are prompted to enter your username and password for that machine:

      Mac에 대한 사용자 이름 및 암호 입력Entering a username and password for the Mac

      로그인하는 경우 전체 이름 대신 시스템 사용자 이름을 사용하세요.When logging in, use your system username rather than full name.

    • Mac에 페어링은 이러한 자격 증명을 사용하여 Mac에 대한 새 SSH 연결을 만듭니다.Pair to Mac uses these credentials to create a new SSH connection to the Mac. 성공하면 Mac의 authorized_keys 파일에 키가 추가됩니다.If it succeeds, a key is added to the authorized_keys file on the Mac. 동일한 Mac에 대한 후속 연결은 자동으로 로그인됩니다.Subsequent connections to the same Mac will login automatically.

  5. Mac에 페어링은 Mac을 자동으로 구성합니다.Pair to Mac automatically configures the Mac.

    Visual Studio 2019 버전 15.6부터 Visual Studio 2019는 필요에 따라 연결된 Mac 빌드 호스트에서 Mono 및 Xamarin.iOS를 설치하거나 업데이트합니다(Xcode는 여전히 수동으로 설치해야 함).Starting with Visual Studio 2019 version 15.6, Visual Studio 2019 installs or updates Mono and Xamarin.iOS on a connected Mac build host as needed (note that Xcode must still be installed manually). 자세한 내용은 자동 Mac 프로비전을 참조하세요.See Automatic Mac provisioning for more details.

  6. 연결 상태 아이콘을 찾습니다.Look for the connection status icon.

    • Visual Studio 2019가 Mac에 연결되면, Mac에 페어링 대화 상자의 해당 Mac 항목에 현재 연결되어 있음을 나타내는 아이콘이 표시됩니다.When Visual Studio 2019 is connected to a Mac, that Mac's item in the Pair to Mac dialog displays an icon indicating that it is currently connected:

      연결된 MacA connected Mac

      한 번에 하나의 Mac만 연결할 수 있습니다.There can be only one connected Mac at a time.

      Mac에 페어링 목록에서 Mac을 마우스 오른쪽 단추로 클릭하면 연결..., 이 Mac 지우기 또는 연결 끊기를 허용하는 바로 가기 메뉴가 표시됩니다.Right-clicking any Mac in the Pair to Mac list brings up a context menu that allows you to Connect..., Forget this Mac, or Disconnect:

      Mac에 페어링 바로 가기 메뉴The Pair to Mac context menus

      이 Mac 지우기를 선택하는 경우 선택한 Mac에 대한 자격 증명이 무시됩니다.If you choose Forget this Mac, your credentials for the selected Mac will be forgotten. 해당 Mac에 다시 연결하려면 사용자 이름과 암호를 다시 입력해야 합니다.To reconnect to that Mac, you will need to re-enter your username and password.

Mac 빌드 호스트에 성공적으로 연결되면 Visual Studio 2019에서 Xamarin.iOS 애플리케이션을 빌드할 준비가 되었습니다.If you have successfully paired to a Mac build host, you are ready to build Xamarin.iOS apps in Visual Studio 2019. Visual Studio용 Xamarin.iOS 소개 가이드를 살펴보세요.Take a look at the Introduction to Xamarin.iOS for Visual Studio guide.

Mac을 페어링할 수 없는 경우 수동으로 Mac 추가를 시도하거나 문제 해결 가이드를 살펴보세요.If you have not been able to pair a Mac, try manually adding a Mac or take a look at the troubleshooting guide.

수동으로 Mac 추가Manually add a Mac

Mac에 페어링 대화 상자에 특정 Mac이 표시되지 않으면 수동으로 추가합니다.If you do not see a particular Mac listed in the Pair to Mac dialog, add it manually:

  1. Mac의 IP 주소를 찾습니다.Locate your Mac’s IP address.

    • Mac에서 시스템 기본 설정 > 공유> 원격 로그인을 차례로 엽니다.Open System Preferences > Sharing > Remote Login on your Mac:

      시스템 기본 설정 > 공유에 있는 Mac의 IP 주소The Mac's IP address in System Preferences > Sharing

    • 또는 명령줄을 사용합니다.Alternatively, use the command line. 터미널에서 다음 명령을 실행합니다.In Terminal, issue this command:

      $ ipconfig getifaddr en0
      196.168.1.8
      

      네트워크 구성에 따라 en0 이외의 인터페이스 이름을 사용해야 할 수도 있습니다.Depending on your network configuration, you may need to use an interface name other than en0. 예를 들어 en1, en2 등이 있습니다.For example: en1, en2, etc.

  2. Visual Studio 2019의 Mac에 페어링 대화 상자에서 Mac 추가... 를 선택합니다.In Visual Studio 2019's Pair to Mac dialog, select Add Mac...:

    Mac에 페어링 대화 상자의 Mac 추가 단추The Add Mac button in the Pair to Mac dialog

  3. Mac의 IP 주소를 입력하고 추가를 클릭합니다.Enter the Mac's IP address and click Add:

    Mac의 IP 주소 입력Entering the Mac's IP address

  4. Mac에 대한 사용자 이름과 암호를 입력합니다.Enter your username and password for the Mac:

    사용자 이름 및 암호 입력Enter a username and password

    로그인하는 경우 전체 이름 대신 시스템 사용자 이름을 사용하세요.When logging in, use your system username rather than full name.

  5. 로그인을 클릭하여 SSH를 통해 Visual Studio 2019를 Mac에 연결하고 알려진 머신 목록에 추가합니다.Click Login to connect Visual Studio 2019 to the Mac over SSH and add it to the list of known machines.

자동 Mac 프로비전Automatic Mac provisioning

Visual Studio 2019 버전 15.6부터 Mac에 페어링은 Xamarin.iOS 애플리케이션을 빌드하는 데 필요한 소프트웨어를 사용하여 Mac을 자동으로 프로비저닝합니다. Mono, Xamarin.iOS(Mac용 Visual Studio IDE가 아닌 소프트웨어 프레임워크) 및 다양한 Xcode 관련 도구(Xcode 자체는 아님).Starting with Visual Studio 2019 version 15.6, Pair to Mac automatically provisions a Mac with software necessary for building Xamarin.iOS applications: Mono, Xamarin.iOS (the software framework, not the Visual Studio for Mac IDE), and various Xcode-related tools (but not Xcode itself).

중요

  • Mac에 페어링은 Xcode를 설치할 수 없으므로 Mac 빌드 호스트에 수동으로 설치해야 합니다.Pair to Mac cannot install Xcode; you must manually install it on the Mac build host. 이 호스트는 Xamarin.iOS 개발에 필요합니다.It is required for Xamarin.iOS development.
  • 자동 Mac 프로비전을 사용하려면 Mac에서 원격 로그인을 사용하도록 설정하고 네트워크를 통해 Windows 컴퓨터에 액세스할 수 있어야 합니다.Automatic Mac provisioning requires that remote login is enabled on the Mac, and the Mac must be network-accessible to the Windows machine. 자세한 내용은 Mac에서 원격 로그인을 사용하도록 설정을 참조하세요.See Enabling remote login on the Mac for more details.
  • 자동 Mac 프로비전에는 Xamarin.iOS를 설치하기 위해 Mac에 3GB의 사용 가능한 공간이 필요합니다.Automatic Mac provisioning requires 3GB of free space on the Mac to install Xamarin.iOS.

Visual Studio 2017이 Mac에 연결되면 Mac에 페어링에서 필요한 소프트웨어 설치/업데이트를 수행합니다.Pair to Mac performs necessary software installations/updates when Visual Studio 2017 is connecting to the Mac.

MonoMono

Mac에 페어링은 Mono가 설치되어 있는지 확인합니다.Pair to Mac will check to make sure that Mono is installed. 설치되어 있지 않으면 Mac에 페어링에서 안정적인 최신 버전의 Mono를 다운로드하여 Mac에 설치합니다.If it is not installed, Pair to Mac will download and install the latest stable version of Mono on the Mac.

진행 상황은 다음 스크린샷과 같이 다양한 프롬프트로 표시됩니다(확대/축소하려면 클릭).Progress is indicated by various prompts, as shown by the following screenshots (click to zoom):

설치 확인Install Check 다운로드Downloading 설치Installing
MonoMono 모노 설치 누락Missing Mono installation 모노 다운로드Downloading Mono 모노 설치Installing Mono

Xamarin.iOSXamarin.iOS

Mac에 페어링은 Windows 컴퓨터에 설치된 버전과 일치하도록 Mac에서 Xamarin.iOS를 업그레이드합니다.Pair to Mac upgrades Xamarin.iOS on the Mac to match the version installed on the Windows machine.

중요

Mac에 페어링은 Mac의 Xamarin.iOS를 알파/베타 버전에서 안정적인 버전으로 다운그레이드하지 않습니다.Pair to Mac will not downgrade Xamarin.iOS on the Mac from alpha/beta to stable. Mac용 Visual Studio를 설치한 경우 릴리스 채널을 다음과 같이 설정합니다.If you have Visual Studio for Mac installed, set your release channel as follows:

  • Visual Studio 2019를 사용하는 경우 Mac용 Visual Studio에서 안정적인 업데이트 채널을 선택합니다.If you use Visual Studio 2019, select the Stable updates channel in Visual Studio for Mac.
  • Visual Studio 2019 Preview를 사용하는 경우 Mac용 Visual Studio에서 알파 업데이트 채널을 선택합니다.If you use Visual Studio 2019 Preview, select the Alpha updates channel in Visual Studio for Mac.

진행 상황은 다음 스크린샷과 같이 다양한 프롬프트로 표시됩니다(확대/축소하려면 클릭).Progress is indicated by various prompts, as shown by the following screenshots (click to zoom):

설치 확인Install Check 다운로드Downloading 설치Installing
Xamarin.iOSXamarin.iOS Xamarin.iOS 설치 누락Missing Xamarin.iOS installation Xamarin.iOS 다운로드Downloading Xamarin.iOS Xamarin.iOS 설치Installing Xamarin.iOS

Xcode 도구 및 라이선스Xcode tools and license

Mac에 페어링은 Xcode가 설치되어 있고 해당 라이선스가 승인되었는지 여부도 확인합니다.Pair to Mac will also check to determine whether Xcode has been installed and its license accepted. Mac에 페어링은 Xcode를 설치하지 않지만 다음 스크린샷과 같이 라이선스 승인을 요구합니다(확대/축소하려면 클릭).While Pair to Mac does not install Xcode, it does prompt for license acceptance, as shown in the following screenshots (click to zoom):

설치 확인Install Check 라이선스 승인License Acceptance
XcodeXcode Xcode 설치 누락Missing Xcode installation Xcode 라이선스Xcode license

또한 Mac에 페어링은 Xcode와 함께 배포되는 다양한 패키지를 설치하거나 업데이트합니다.Additionally, Pair to Mac will install or update various packages distributed with Xcode. 예:For example:

  • MobileDeviceDevelopment.pkgMobileDeviceDevelopment.pkg
  • XcodeExtensionSupport.pkgXcodeExtensionSupport.pkg
  • MobileDevice.pkgMobileDevice.pkg
  • XcodeSystemResources.pkgXcodeSystemResources.pkg

이러한 패키지의 설치는 프롬프트 없이 빠르게 수행됩니다.The installation of these packages happens quickly and without a prompt.

참고

이러한 도구는 macOS 10.9 현재로 Xcode와 함께 설치되는 Xcode 명령줄 도구와 다릅니다.These tools are distinct from the Xcode Command Line Tools, which as of macOS 10.9 are installed with Xcode.

자동 Mac 프로비전 문제 해결Troubleshooting automatic Mac provisioning

자동 Mac 프로비전을 사용하는 데 문제가 발생하면 %LOCALAPPDATA%\Xamarin\Logs\15.0에 저장된 Visual Studio 2019 IDE 로그를 살펴보세요.If you encounter any trouble using automatic Mac provisioning, take a look at the Visual Studio 2019 IDE logs, stored in %LOCALAPPDATA%\Xamarin\Logs\15.0. 이러한 로그에는 효율적으로 오류를 진단하거나 지원을 받는 데 도움이 되는 오류 메시지가 포함될 수 있습니다.These logs may contain error messages to help you better diagnose the failure or get support.

Windows 명령줄에서 iOS 응용 프로그램 빌드Build iOS apps from the Windows command-line

Mac에 페어링은 명령줄에서 Xamarin.iOS 애플리케이션을 빌드하도록 지원합니다.Pair to Mac supports building Xamarin.iOS applications from the command line. 예:For example:

C:\samples\App1>msbuild App1.sln /p:ServerAddress=10.211.55.2 /p:ServerUser=xamUser /p:Platform=iPhoneSimulator /p:ServerPassword=mypassword

위의 예제에서 msbuild에 전달된 매개 변수는 다음과 같습니다.The parameters passed to msbuild in the above example are:

  • ServerAddress – Mac 빌드 호스트의 IP 주소입니다.ServerAddress – The IP address of the Mac build host.
  • ServerUser – Mac 빌드 호스트에 로그인할 때 사용할 사용자 이름입니다.ServerUser – The username to use when logging in to the Mac build host. 전체 이름이 아닌 시스템 사용자 이름을 사용합니다.Use your system username rather than your full name.
  • ServerPassword – Mac 빌드 호스트에 로그인할 때 사용할 암호입니다.ServerPassword – The password to use when logging in to the Mac build host.

참고

Visual Studio 2019에서는 msbuild를 다음 디렉터리에 저장합니다. C:\Program Files (x86)\Microsoft Visual Studio\2017\<Version>\MSBuild\15.0\BinVisual Studio 2019 stores msbuild in the following directory: C:\Program Files (x86)\Microsoft Visual Studio\2017\<Version>\MSBuild\15.0\Bin

Mac에 페어링은 Visual Studio 2019 또는 명령줄에서 특정 Mac 빌드 호스트에 처음 로그인할 때 SSH 키를 설정합니다.The first time Pair to Mac logs in to a particular Mac build host from either Visual Studio 2019 or the command-line, it sets up SSH keys. 이러한 키를 사용하면 이후의 로그인에서 사용자 이름이나 암호가 필요하지 않습니다.With these keys, future logins will not require a username or password. 새로 만든 키는 %LOCALAPPDATA%\Xamarin\MonoTouch에 저장됩니다.Newly created keys are stored in %LOCALAPPDATA%\Xamarin\MonoTouch.

명령줄 빌드 호출에서 ServerPassword 매개 변수가 생략되면 Mac에 페어링은 저장된 SSH 키를 사용하여 Mac 빌드 호스트에 로그인하려고 합니다.If the ServerPassword parameter is omitted from a command-line build invocation, Pair to Mac attempts to log in to the Mac build host using the saved SSH keys.

요약Summary

이 문서에서는 Visual Studio 2019 개발자가 Xamarin.iOS를 사용하여 네이티브 iOS 애플리케이션을 빌드할 수 있도록 Mac에 페어링을 사용하여 Visual Studio 2019를 Mac 빌드 호스트에 연결하는 방법을 설명했습니다.This article described how to use Pair to Mac to connect Visual Studio 2019 to a Mac build host, enabling Visual Studio 2019 developers to build native iOS applications with Xamarin.iOS.

다음 단계Next steps